我正在为SQL查询创建逗号分隔的字符串。我想知道什么是更好的arraymap或foreach循环。以下是我的两个例子:
$group_ids = "";
foreach ($group_array as $group_id) {
$group_ids .= $group_id . ",";
}
$group_ids = rtrim($group_ids, ',');
VS
$group_ids = "";
array_map(function ($group_id) use ($group_ids) {
$group_ids .= $group_id . ",";
return;
}, $group_array);
$group_ids = rtrim($group_ids, ',');
还是有更好的方法吗?或者说实际上差别不大?
答案 0 :(得分:3)
$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);
这 http://php.net/manual/en/function.implode.php
会更有效率
答案 1 :(得分:2)
您也可以使用implode(',',$array_of_ids)
。在使用内爆之前,请确保修剪您的值。
$ids = ['foo','bar','boo'];
$ids = array_map('trim',$ids);
$ids_list = implode(',',$ids);
echo $ids_list; # foo,bar,boo