PHP интерпретатор / компилятор - PullRequest
4 голосов
/ 04 июня 2010

Я пытаюсь понять, как работает компилятор / интерпретатор php.

Я попытался загрузить исходный код php и попытался понять, как он работает. Я не смог найти надлежащую документацию. Было бы здорово, если бы кто-то мог пролить свет на th-модули, которые делают компилятор php, а также на то, как сервер apache использует компилятор php

1 Ответ

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

Как сказал webbiedave, вы можете изучить основы составителей / интерпретаторов. Вы можете найти большую часть анализатора и лексера в файлах Zend / zend_language_scanner.l и Zend / zend_language_parser.y

Если вы хотите понять, как работает php, я предлагаю вам установить точки останова в начале zend_execute_scripts() в Zend \ zend.c и в строке

if ((ret = EX(opline)->handler(execute_data TSRMLS_CC)) > 0)

в файле Zend \ zend_vm_execute.h, а затем пошагово пройдитесь по коду.

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