Почему этот троичный оператор не работает?

Я думаю, что эта переменная будет довольно простой, но она не работает? Он выводит строку по мере необходимости, если она установлена, но если она «ложная» или не установлена, она не печатает «N / A»? Я делаю что-то здесь не так?

$term = isset($row['term']) ? $row['term'] : 'N/A';

-2

Решение

Мое предложение было бы попробовать следующее:

$term = !empty($row['term']) ? $row['term'] : 'N/A';

Потенциально у вас есть сценарий, где $row['term'] установлен, но значения не существует, поэтому он все равно попадает в условие истинного условия.

Например следующее:

$row = ['term' => ''];

$term = isset($row['term']) ? $row['term'] : 'N/A';

echo $term; // Prints ''
5

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]