我正在努力理解php编译器/解释器的工作原理。
我尝试下载了php源代码并尝试了解它的工作原理,但是我没有找到合适的文档。如果有人能够介绍一下构成php编译器的模块以及Apache服务器如何使用php编译器,那就太好了。
我正在努力理解php编译器/解释器的工作原理。
我尝试下载了php源代码并尝试了解它的工作原理,但是我没有找到合适的文档。如果有人能够介绍一下构成php编译器的模块以及Apache服务器如何使用php编译器,那就太好了。
正如webbiedave所说,您可能需要学习编译器/解释器的基础知识。您可以在文件Zend/zend_language_scanner.l和Zend/zend_language_parser.y中找到大部分解析器和词法分析器的内容。
如果您想了解php的工作原理,我建议您在Zend\zend.c的zend_execute_scripts()
开头设置断点,并在该行处停止。
if ((ret = EX(opline)->handler(execute_data TSRMLS_CC)) > 0)