我正在为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, ',');
还是有更好的方法?还是实际上没有什么区别?
$array = array('lastname', 'email', 'phone');
$comma_separated = implode(",", $array);
来自http://php.net/manual/en/function.implode.php
将更有效
您也可以使用implode(',',$array_of_ids)
。只需确保在使用爆破之前修剪值。
$ids = ['foo','bar','boo'];
$ids = array_map('trim',$ids);
$ids_list = implode(',',$ids);
echo $ids_list; # foo,bar,boo