Это все относится к логическим операторам:
php.net/manual/ru/language.operators.logical.php
В случае ИЛИ сначала выполняется первое выражение и только если оно false выполняется второе (какой смысл для ИЛИ выполнять второе выражение если первое уже true?)
для И будет аналогичное foo() && bar()
bar() выполнится только если foo() === true
Касаемо читаемости:
1 - все зависит от контекста. Если автору не совсем очевидно, что это легко читается - значит это читается плохо
2 - у Yii очень своеобразный code style и не стоит брать с них пример)
3 - [доп] проверять установлена ли константа или нет - это совсем плохо.. Константа на то и константа чтоб быть постоянной. Если она то есть, то нет - значит это переменная, причем плохая =D