Оглавление
Как это работаетПример использования тернарного оператораСокращённая форма тернарного оператораЦепочки тернарных операторовВывод
Тернарный оператор в PHP
Тернарный оператор - это сокращённая форма конструкции
if-else. Вместо того чтобы писать так:можно использовать:
Как это работает
- PHP сначала вычисляет условие. Если оно истинно, возвращается
значение1, иначезначение2. - Результат присваивается переменной
$результат.
Использование тернарного оператора позволяет сделать код более лаконичным.
Название "тернарный" связано с тем, что оператор требует трёх операндов:
условие, значение1, значение2.Пример использования тернарного оператора
Допустим, нужно вывести ссылку "Войти", если пользователь не авторизован, и "Выйти", если авторизован. С помощью
if-else это выглядит так:С использованием тернарного оператора:
Если строка слишком длинная, её можно разбить:
Сокращённая форма тернарного оператора
С PHP 5.3 доступна сокращённая форма:
Здесь PHP проверяет
$начальное в булевом контексте. Если оно истинно, присваивает его значение, иначе $по_умолчанию.Пример:
Цепочки тернарных операторов
Можно строить цепочки, используя скобки:
Однако часто такие цепочки усложняют чтение кода. В таких случаях лучше использовать
if-else или if-elseif.Вывод
Тернарный оператор (?: ) — это компактная альтернатива if-else. Используйте его, когда это делает код короче и понятнее.