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

在PHP中将数组转换为字符串,php,arrays,Php,Arrays,我有一个类似PHP的数组: $a = array('110','111','121'); 我想将其转换为: $b = " '110' , '111' , '121' "; PHP中是否有任何函数可以做到这一点?我知道这可以通过数组上的循环来实现,并将值放入$b,但我想要一个代码更少的解决方案 谢谢。是的,检查内爆--使用该功能 $b = " '" . implode("' , '", $a) . "' "; 你需要所有的空格和引号吗?您仍然可以使用内爆,尽管数组_reduce可能更好 $a

我有一个类似PHP的数组:

$a = array('110','111','121');
我想将其转换为:

$b = " '110' , '111' , '121' ";
PHP中是否有任何函数可以做到这一点?我知道这可以通过数组上的循环来实现,并将值放入$b,但我想要一个代码更少的解决方案

谢谢。

是的,检查内爆--

使用该功能

$b = " '" . implode("' , '", $a) . "' ";

你需要所有的空格和引号吗?您仍然可以使用
内爆
,尽管
数组_reduce
可能更好

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

$x = "'".implode("' , '", $a)."'";
array\u reduce

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

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

这是一种不同的方法

$arraystring = print_r($your_array, true); 
如果你想在其他地方打印,那么

$arraystring = '<pre>'.print_r($your_array, true).'</pre>';
非常好的外卖


与获取空字符串相比,使用和获取NULL的明确副本并不完全是一个优势。您必须检查返回类型,而不仅仅是能够使用它。让函数返回单一类型总是更好的选择。您得到的不是空字符串,而是包含两个引号的字符串。:)所以你可能还得检查一下。如果是这样,检查null比检查一些模糊的内容(如两个单引号)更符合逻辑,也更方便。当然,您可以选择先内爆,然后添加引号。或者,您可以将array_reduce的结果类型转换为字符串,这将把NULL转换为空字符串。您得到的是带引号的字符串,因为您的实现有缺陷。函数和方法不应返回null。让它们返回一个-或者在本例中是一个空字符串。当您返回null时,实际上是在返回开发人员必须检查的状态消息。
ob_start();
print_r($var1);
print_r($arr1);
echo "blah blah";
print_r($var2);
print_r($var1);
$your_string_var = ob_get_clean();
$arraystring = json_encode($your_array);