@Senseich

Как правильно записать условие в цикле foreach PHP?

Посмотрите, что не правильно делаю, PHP Storm ругается на синтаксис:

<?php foreach ($arItems as $key => $item):?>
        <tr>
            <td><?=$item['ID']?></td>
            <td><?=$item['NAME']?></td>
            <td><?=$item['PRICE']?></td>
            <td><?= round(100 - ($item['DISCOUNT_PRICE'] / $item['PRICE'] * 100))?></td>
            <td><?=$item['AMOUNT'];
                if ($item['AMOUNT'] == 0) {
                    echo "Нет в наличии";

                }?>
            </td>
            <td><img src="/_images/<?=$key+1?>.jpg" alt=""></td>
        </tr>
    <?php endforeach;?>

Но он выводит значение ноль вместе с "Нет в наличии", а если убрать $item['AMOUNT']; то ругается на синтаксис. В общем как правильно записать?
  • Вопрос задан
  • 200 просмотров
Пригласить эксперта
Ответы на вопрос 2
OlegMifle
@OlegMifle
php-программист
Так ты ему говоришь вывести $item['AMOUNT'], а потом, если $item['AMOUNT'] равен 0 вывести строку "Нет в наличии". Всё логично.
С точки зрения синтаксиса языка ошибок тут нет.
Ответ написан
Комментировать
mmmaaak
@mmmaaak
<?php foreach ($arItems as $key => $item):?>
        <tr>
            <td><?=$item['ID']?></td>
            <td><?=$item['NAME']?></td>
            <td><?=$item['PRICE']?></td>
            <td><?= round(100 - ($item['DISCOUNT_PRICE'] / $item['PRICE'] * 100))?></td>
            <td><? echo $item['AMOUNT'] != 0 ? $item['AMOUNT'] : 'Нет в наличии' ; ?></td>
            <td><img src="/_images/<?=$key+1?>.jpg" alt=""></td>
        </tr>
    <?php endforeach;?>
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы