PHP / 在最后一次 foreach 迭代后从 echo 中删除符号
PHP / Remove symbol from echo after final foreach iteration
我正在尝试制作一个计算器。
如何在 foreach 循环的最后一次迭代后使 echo
命令中的 plus
符号消失?
现在显示为
55 + 22 + 4 + = RESULT
$numbers = array (55, 22 , 4);
foreach ($numbers as $number) {
echo "$number + ";
使用implode()函数代替foreach:
echo implode(" + ", $numbers);
如果你需要foreach
$numbers = array (55, 22 , 4);
$i=0;
foreach ($numbers as $number) {
$i++;
echo "$number ";
if(count($numbers) != $i){
echo "+ ";
}
}
看到这个post,它有一个很好的答案。对于您的用例,我建议与 Tomasz 相同。但如果您想知道如何找到最后一个循环,我会把它留在这里。
$numbers = array(55, 22, 4);
$i = 0;
$len = count($numbers);
foreach ($numbers as $number) {
if ($i == 0) {
// first
} else if ($i == $len - 1) {
// last
}
$i++;
}
还有另一种简单的方法,您不需要在此处使用循环。
用 implode()
方法试试。
$numbers = array (55, 22 , 4);
echo implode(' + ', $numbers);
我正在尝试制作一个计算器。
如何在 foreach 循环的最后一次迭代后使 echo
命令中的 plus
符号消失?
现在显示为
55 + 22 + 4 + = RESULT
$numbers = array (55, 22 , 4);
foreach ($numbers as $number) {
echo "$number + ";
使用implode()函数代替foreach:
echo implode(" + ", $numbers);
如果你需要foreach
$numbers = array (55, 22 , 4);
$i=0;
foreach ($numbers as $number) {
$i++;
echo "$number ";
if(count($numbers) != $i){
echo "+ ";
}
}
看到这个post,它有一个很好的答案。对于您的用例,我建议与 Tomasz 相同。但如果您想知道如何找到最后一个循环,我会把它留在这里。
$numbers = array(55, 22, 4);
$i = 0;
$len = count($numbers);
foreach ($numbers as $number) {
if ($i == 0) {
// first
} else if ($i == $len - 1) {
// last
}
$i++;
}
还有另一种简单的方法,您不需要在此处使用循环。
用 implode()
方法试试。
$numbers = array (55, 22 , 4);
echo implode(' + ', $numbers);