Если Вы, как и я много программируете в php, то я уверен Вас эта находка весьма займет.
Как мы обычно делаем, если надо реализовать такую логику:
if ( $a ) { $b = $a ; } else { $b = $c ; } |
чтобы не плодить if-else
блоков, мы делаем так
$b = $a ? $a : $c ; |
Где-то я читал что подобная конструкция не читабельна, но она очень удобна. Я так и пишу, смущает разве повторение оператора $a
. Если это переменная то черт с ней, но если это какой-то метод или функция, то получается два вывода. Что совсем не гуд.
В JS есть удобная конструкция на этот случай
var b = a || c; |
Если a
отлично от false
, то в b
будет записано оно, если нет то с
. В php такое не сработает. Там в $b
запишется результат логического сравнения.
Но оказывается в PHP есть аналогичная конструкция
$b = $a ?: $c ; |
Та дааам! Получите и распишитесь. Кто бы знал.