在PHP中将数组转换为字符串

hd.*_*hd. 4 php arrays

我有像PHP一样的数组:

$a = array('110','111','121');
Run Code Online (Sandbox Code Playgroud)

我想将其转换为:

$b = " '110' , '111' , '121' ";
Run Code Online (Sandbox Code Playgroud)

在PHP中有任何功能吗?我知道它可以通过数组上的循环完成并将值放在$ b中,但我想要更少的代码解决方案.

谢谢.

Gol*_*rol 8

你确实需要所有这些空格和引号吗?你仍然可以使用implode,虽然array_reduce可能更好

$a = array(1, 2, 3, 4);

$x = "'".implode("' , '", $a)."'";
Run Code Online (Sandbox Code Playgroud)

array_reduce:

$x = array_reduce($a, function($b, $c){return ($b===null?'':$b.' , ')."'".$c."'";});
Run Code Online (Sandbox Code Playgroud)

优点array_reduce是,您将获得空数组的NULL,而不是''.请注意,您不能在5.3之前的php版本中使用此内联函数构造.您需要将回调作为一个单独的函数,并将其名称作为字符串传递给array_reduce.