Смотрю документацию php о функции exit. Натыкаюсь на такой пример:
$file = fopen($filename, 'r')
or exit("Невозможно открыть файл ($filename)");
В самой документации на счёт or есть информация только как о логическом операторе. Я правильно понимаю, что этот or работает как конструкция try-catch? Если слева от or - false или функция, возвращающая false или ошибку, то выполняется код справа?
Как уже ответили, это действительно алиас ||1.
Но это не аналог try...catch, так как последний ловит выброшенные исключения, а || выбирает из операндов.
Конструкция вида $file = open(...) or die('Cannot open'); использует особенность вычисления оператора OR: если левый операнд равен true (или тому, что приводит к true в логическом контексте), то правый не вычисляется.
Поэтому либо файл открывается (функция вернёт true), либо вычисляется второй аргумент, в этом примере, останавливает скрипт с выводом ошибки.
Похожий вопрос на enSO: Logical Operators, || or OR?.
1 Приоритет токена || выше, чем or, спасибо @tutankhamun.
Это синоним || со всеми вытекающими в PHP. Try-catch ловить будет, если в исключении true-false, 0-1 и т.д.
Апостиль в Лос-Анджелесе без лишних нервов и бумажной волокиты
Основные этапы разработки сайта для стоматологической клиники
Продвижение своими сайтами как стратегия роста и независимости