Как Zend Engine компилирует PHP-коды или Как работает PHP-компилятор? - PullRequest
4 голосов
/ 21 марта 2011

Привет, любое тело знает, как Zend Engine компилирует PHP-коды. Например, в java наши коды компилируются в байт-код, после чего он конвертируется в машинный язык. Как мудро, как Zend Engine компилирует PHP-коды? Пожалуйста, помогите мне.

Ответы [ 2 ]

9 голосов
/ 21 марта 2011

Это та же идея с PHP:

  • Первый шаг: исходный код PHP (т.е. некоторый текст) компилируется в набор кодов операций
  • Второй шаг: эти коды выполняются.


Эта компиляция по умолчанию выполняется каждый раз, когда должен выполняться PHP-скрипт, который требует некоторого процессора.

По этой причине вы можете использовать некоторый кэш кода операции (например, расширение APC ) , чтобы хранить коды операции в памяти - избегая избыточной операции компиляции.


Вы сможете найти интересную информацию об этих процессах в следующей презентации Себастьяна Бергмана: Внутренние компоненты компилятора PHP

2 голосов
/ 04 июня 2013

Zend Engine используется внутренне PHP как движок компилятора и среды выполнения.Скрипты PHP загружаются в память и компилируются в коды операций Zend.Эти коды операций выполняются, и сгенерированный HTML-код отправляется клиенту.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...