PHP переменная с выражением нескольких условий

Я иду через код веб-сайта, и я наткнулся на эту строку:

$useStaticLoader = PHP_VERSION_ID >= 50600 && !defined('HHVM_VERSION') && (!function_exists('zend_loader_file_encoded') || !zend_loader_file_encoded());

Что это значит?

0

Решение

Это логическое выражение как scaisEdge сказал в своем комментарии, чтобы было понятно, давайте рассмотрим это выражение:

Сначала переменная $useStaticLoader будет содержать результат выражения, которое может быть true или же false это ясно до сих пор.

Первая часть условия проверяет, является ли текущая версия PHP больше или равна 5,6.

  • PHP_VERSION_ID это предопределенная константа который возвращает
    идентификатор версии PHP для 5.6 возвращает что-то вроде 50630 в php 7 что-то вроде 70025.

Вторая часть условия проверяет, является ли механизм, используемый для выполнения кода PHP, ZEND или же HHVM.

Последнее условие проверки погоды zend_loader_file_encoded функция существует, которая является частью Zend Guard загружает расширение а это значит, что он проверяет погоду Zend Guard загружает расширение установлен или нет.

Чтобы упростить его, условие проверяет, является ли версия PHP больше или равна 5,6, и не является ли она HHVM и загруженное расширение Zend Guard недоступно или не установлено.

1

Другие решения

Других решений пока нет …

По вопросам рекламы ammmcru@yandex.ru