Я пытаюсь вывести массив, который выглядит так

[data, data],
[data, data],
[data, data]

Последняя строка должна выводиться без запятой.

Мой цикл For выглядит следующим образом:

    
    for ($i = 0; $i < $count; $i++)
    {
        echo "[" . $result[$i]->dato . ", " . $result[$i]->vaegt . "]";
        
        if ($i < $count) {
            echo ",<br>";
        }
    } 

Он выводит правильные строки, но запятая все еще присутствует в последней строке. Кажется, что оператор If все еще читает последнюю строку?

0
Frederik 26 Янв 2022 в 15:10
Используйте implode()
 – 
0stone0
26 Янв 2022 в 15:13
1
Ваш $i всегда меньше, чем $count. Последний элемент $count-1
 – 
Hendrik
26 Янв 2022 в 15:15

1 ответ

Лучший ответ

Вам нужно проверить условие для n-1.

for ($i = 0; $i < $count; $i++)
{
    echo "[" . $result[$i]->dato . ", " . $result[$i]->vaegt . "]";
    
    if ($i < $count-1) {
        echo ",<br>";
    }
} 
0
RiggsFolly 26 Янв 2022 в 15:20
Спасибо! Отлично получилось!
 – 
Frederik
26 Янв 2022 в 15:30
Рад помочь тебе.
 – 
Aqib Javed
26 Янв 2022 в 15:31