>我使用 foreach 如下
foreach($album as $a) {
$string .= $a['value'].', ';
}
echo $string;
返回类似的东西
1, 2, 3,
等
现在如何从最后一个循环中删除 。
所以$string返回 1、2、3
您可以使用implode()
:
$values = array();
foreach ($album as $a){
$values[] = $a['value'];
}
$string = implode(',', $values);
也许你可以做这样的事情:
$value = array();
foreach($album as $a) {
array_push($value, $a['value']);
}
echo join(',', $value); // join by comma
您可以使用
rtrim()
来执行此操作
rtrim($string, ',');
echo $string;
应该做这项工作。
$first = TRUE;
$string = '';
foreach($album as $a) {
if ($first) {
$first = FALSE;
} else {
$string .= ', ';
}
$string .= $a['value'];
}
在这种情况下,
一个 for 循环会更适合,这样您就可以避免为最后一个元素添加它。
但是你可以把字符串修剪到右边。
如果你不想使用 implode()
,这是最好的方法,你可以创建一个临时变量:
foreach($album as $a){
$string .= $addStr . $a['value'];
$addStr = ',';
}
尝试:
$string = preg_replace('#, $#', '', $string);
最简单的方法:
foreach($album as $a){
$string .= $a['value'].', ';
}
$string = substr($string, 0, -2);
echo $string;
更多关于 substr 的信息