我有像PHP一样的数组:
$a = array('110','111','121');
我想将其转换为:
$b = " '110' , '111' , '121' ";
PHP中有没有这样的功能呢?我知道它可以通过数组循环完成并将值放在$ b中,但我想要更少的代码解决方案。
谢谢。答案 0 :(得分:8)
您确实需要所有这些空格和引号吗?您仍然可以使用implode
,但array_reduce
可能更好
$a = array(1, 2, 3, 4);
$x = "'".implode("' , '", $a)."'";
array_reduce
:
$x = array_reduce($a, function($b, $c){return ($b===null?'':$b.' , ')."'".$c."'";});
array_reduce
的优点是,对于空数组而不是''
,您将获得NULL。请注意,您不能在5.3之前的php版本中使用此内联函数构造。您需要将回调作为一个单独的函数,并将其名称作为字符串传递给array_reduce。
答案 1 :(得分:4)
答案 2 :(得分:3)
这是一种不同的方法
$arraystring = print_r($your_array, true);
如果你想在其他地方打印那么
$arraystring = '<pre>'.print_r($your_array, true).'</pre>';
如果你这样做,你可以混合许多数组和变量
ob_start();
print_r($var1);
print_r($arr1);
echo "blah blah";
print_r($var2);
print_r($var1);
$your_string_var = ob_get_clean();
答案 3 :(得分:2)
使用implode功能。
$b = " '" . implode("' , '", $a) . "' ";
答案 4 :(得分:0)
非常好的输出提供
$arraystring = json_encode($your_array);