Структура «(выражение) ИЛИ (оператор)» в PHP - PullRequest
0 голосов
/ 05 мая 2020

Я наткнулся на следующий код

defined('CONSTANT') or define('CONSTANT', 'SomeDefaultValue');

, который я могу догадаться, что он делает, но не уверен, поскольку я не смог найти такую ​​структуру оператора в руководстве PHP. Это сокращение от

if (!defined('CONSTANT')) {
  define('CONSTANT', 'SomeDefaultValue');
}

1 Ответ

1 голос
/ 05 мая 2020

Это не специальное утверждение, а идиома, построенная из других частей. Просто следуйте панировке:

  1. defined () возвращает true, если константа существует и определена, false в противном случае.
  2. или - старый добрый логический оператор, поэтому происходит короткое замыкание (оценка останавливается, как только появляется ответ).
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...