对不起,如果这令人困惑.我很难掌握初学PHP知识.
我正在使用以下foreach循环:
foreach ($_POST['technologies'] as $technologies){
echo ", " . $technologies;
}
Run Code Online (Sandbox Code Playgroud)
哪个产生:
, 第一第二第三
我想要的是:
第一第二第三
我只需要循环跳过echo ", "第一个键.我怎么能做到这一点?
Joh*_*ica 21
您可以使用=>而不是为第一个项目打印逗号来拉出每个数组项的索引:
foreach ($_POST['technologies'] as $i => $technologies) {
if ($i > 0) {
echo ", ";
}
echo $technologies;
}
Run Code Online (Sandbox Code Playgroud)
或者,更简单的是,你可以使用implode($ glue,$ pieces),它"以相同的顺序返回包含所有数组元素的字符串表示的字符串,并在每个元素之间使用粘合字符串":
echo implode(", ", $_POST['technologies']);
Run Code Online (Sandbox Code Playgroud)
对于在 foreach 循环的每一次但第一次迭代中做某事的一般情况:
$first = true;
foreach ($_POST['technologies'] as $technologies){
if(!$first) {
echo ", ";
} else {
$first = false;
}
echo $technologies;
}
Run Code Online (Sandbox Code Playgroud)
但是implode()是处理您这个特定问题的最佳方法:
echo implode(", ", $_POST['technologies']);
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
7424 次 |
| 最近记录: |