Предопределенные константы
Перечисленные ниже константы определены данным расширением и могут быть доступны только в том случае, если PHP был собран с поддержкой этого расширения или же в том случае, если данное расширение было подгружено во время выполнения.
Следующие опкоды определяются как константы с помощью uopz до версии 5.0.0:
-
ZEND_EXIT(int) -
Вызывается с помощью exit() and die(), не принимает аргументов. Возвращает логический
trueдля выхода,falseдля продолжения -
ZEND_NEW(int) - Вызывается конструкцией объекта, получает класс создаваемого объекта в качестве единственного аргумента
-
ZEND_THROW(int) - Вызывается конструкцией throw, получает класс выбрасываемого исключения в качестве единственного аргумента
-
ZEND_FETCH_CLASS(int) - Вызывается во время композиции, получает имя получаемого в качестве единственного аргумента
-
ZEND_ADD_TRAIT(int) - Вызывается во время композиции, получает класс добавляемого трейта первым аргументом, и имя трейта в качестве второго аргумента
-
ZEND_ADD_INTERFACE(int) - Вызывается во время композиции, получает класс добавляемого интерфейса первым аргументом, и имя интерфейса в качестве второго аргумента
-
ZEND_INSTANCEOF(int) - Вызывается оператором instanceof, получает проверяемый объект первым аргументом и имя класса, который должен быть в объекте в качестве второго аргумента
Следующие константы управляют поведением виртуальной машины после вызова обработчика пользователя, будьте предельно осторожны! Эти константы удалены с uopz версии 5.0.0.
-
ZEND_USER_OPCODE_CONTINUE(int) - Продвинуть 1 опкод и продолжить
-
ZEND_USER_OPCODE_ENTER(int) - Ввести новый new op_array без рекурсии
-
ZEND_USER_OPCODE_LEAVE(int) - Вернуть вызывающий op_array внутри того же исполнителя
-
ZEND_USER_OPCODE_DISPATCH(int) - Отправить в исходный обработчик опкода
-
ZEND_USER_OPCODE_DISPATCH_TO(int) - Отправить на конкретный обработчик (посредством бинарного OR с константой опкода ZEND)
-
ZEND_USER_OPCODE_RETURN(int) - Выйти из исполнителя (возврат из функции)
Следующие модификаторы регистрируются как константы uopz
-
ZEND_ACC_PUBLIC(int) - Отметить функцию как общедоступную, по умолчанию
-
ZEND_ACC_PROTECTED(int) - Отметить функцию как защищенную
-
ZEND_ACC_PRIVATE(int) - Отметить функцию как закрытую
-
ZEND_ACC_STATIC(int) - Отметить функцию как статическую
-
ZEND_ACC_FINAL(int) - Отметить функцию как окончательную
-
ZEND_ACC_ABSTRACT(int) - Отметить функцию как абстрактную
-
ZEND_ACC_CLASS(int) - Фиктивная регистрация для согласованности, запись класса по умолчанию. Удалено в uopz 5.0.0.
-
ZEND_ACC_INTERFACE(int) - Отметить класс как интерфейс. Удалено в uopz 5.0.0.
-
ZEND_ACC_TRAIT(int) - Отметить класс как трейт. Удалено в uopz 5.0.0.
-
ZEND_ACC_FETCH(int) - Используется только для получения флагов. Удалено в uopz 5.0.0.