我的代码是
$arr = array('item1', 'item2', 'item3');
$str = implode(',', $arr);
echo $str;
原始输出为:item1,item2,item3
但我需要这样的输出:'item1','item2','item3'
任何想法
答案 0 :(得分:5)
您可以','
而不是,
。
试试这个:
$arr = array('item1', 'item2', 'item3');
$str = "'" . implode("','", $arr) . "'";
echo $str;
答案 1 :(得分:3)
$array = array('item1', 'item2', 'item3');
$str = implode(',', array_map('add_quotes', $array));
function add_quotes($str) {
return sprintf("'%s'", $str);
}
echo $str;
答案 2 :(得分:0)
通过这种方式,您可以设置自己的包装器,以防需要在其他部分重用代码。
function implode_wrapper($split, $arr, $wrapper)
{
$aux = $arr;
foreach ($aux as $key=>$value)
{
$arr[$key] = $wrapper . $value . $wrapper;
}
$str = implode($split, $arr);
return $str;
}
$arr = array('item1', 'item2', 'item3');
$str = implode_wrapper(",", $arr, "'");
echo $str;