在PHP循环中构建逗号分隔的字符串

时间:2013-09-09 14:54:02

标签: php arrays loops

Hello Guys我需要这样做,

我有一个共同的循环

foreach ($stuffs as $stuff) {
echo $stuff;
}

让我们假设$ stuff是我拥有的mysql表的'id',我不希望在下一个结果中显示,所以我想构建一个这样的字符串

1,23,54,67 (comma separated) 

因此该字符串将在mysql查询中以排除已经显示的结果。 我怎么能这样做?

应该与内爆?我怎样才能做到这一点?

4 个答案:

答案 0 :(得分:13)

implode应该是工具:

implode(",", $stuffs);

将返回以逗号分隔的列表。

测试

$myarray=array(1,2,"hello",4,5);
echo implode(",", $myarray);

返回

1,2,hello,4,5

答案 1 :(得分:0)

应该如此简单:

$string = implode(",",$stuffs);
echo $string

答案 2 :(得分:0)

如果你真的想要循环:

$values = "";

foreach ($stuffs as $stuff) {
    $values != "" && $values .= ",";
    $values .= $stuff;
 }

echo $values;

我建议使用implode,但如果你想做更多的东西,循环可以真正给你更多的力量。

答案 3 :(得分:0)

这适用于我的情况(检测是否不是循环的最后一次迭代):

foreach($array as $key => $val){
    ...
    if($key!==count($array)-1){echo ',';}
}