PHP / Удалить символ из эха после последней итерации foreach - PullRequest
0 голосов
/ 09 мая 2018

Я пытаюсь сделать калькулятор.

Как я могу сделать так, чтобы после последней итерации цикла foreach символ plus в команде echo исчезал?
Теперь он отображается как

55 + 22 + 4 + = РЕЗУЛЬТАТ

$numbers = array (55, 22 , 4);
        foreach ($numbers as $number) {
            echo "$number + ";

Ответы [ 4 ]

0 голосов
/ 09 мая 2018

Для этого есть еще один простой способ: вам не нужно использовать циклы здесь. Попробуйте это методом implode().

$numbers = array (55, 22 , 4);
echo implode(' + ', $numbers);
0 голосов
/ 09 мая 2018

Если вам нужен foreach

$numbers = array (55, 22 , 4);
$i=0;
foreach ($numbers as $number) {
    $i++;
    echo "$number ";
    if(count($numbers) != $i){
        echo "+ ";
    }
}
0 голосов
/ 09 мая 2018

См. сообщение , у него отличный ответ. Для вашего случая использования я бы предложил то же самое, что и 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++;
}
0 голосов
/ 09 мая 2018

Используйте функцию implode () вместо foreach:

echo implode(" + ", $numbers);
...