我有数组
( [0] => 1 [1] => 2 [2] => 3 )
我要做到:
'1','2','3'
该怎么做,我尝试使用爆破,但结果是:
'1,2,3'
有人可以帮助我吗?谢谢。
答案 0 :(得分:4)
您只需要将单引号添加到implode
胶粘字符串中,并在结果字符串的外面:
$array = [1, 2, 3];
echo "'" . implode("','", $array) . "'";
输出:
'1','2','3'
无论您的数组值是字符串还是数字(例如
$array = ['1', '2', '3'];
echo "'" . implode("','", $array) . "'";
输出:
'1','2','3'
答案 1 :(得分:0)
尝试一下:
$array = array('1', '2', '3');
$comma_separated = "'" . implode ( "', '", $array ) . "'";
echo $comma_separated;
答案 2 :(得分:0)
如果结果是一个数组(如您在注释中所述),则可以使用array_map
将整数数组转换为字符串数组:
$arr = [1, 2, 3];
var_dump(array_map('strval', $arr));
这将导致字符串数组:
['1', '2', '3']
答案 3 :(得分:0)
sprintf()和array_map()在这种情况下将起作用:
$arr = ['1', '2', '3'];
$str = implode(', ', array_map(function($val){return sprintf("'%s'", $val);}, $arr));
echo $str; //'1', '2', '3'