zend引擎如何编译php代码或php编译器如何工作?

DEV*_*OPS 4 php compiler-construction

大家好知道zend引擎如何编译php代码.例如.在java中,我们的代码在转换为机器语言之后被编译为字节代码.像智能如何zend引擎编译PHP代码?请帮助我.

Pas*_*TIN 10

这与PHP的想法相同:

  • 第一步:PHP源代码(即一些文本)被编译为一组操作码
  • 第二步:执行那些操作码.


默认情况下,每次执行PHP脚本时都会执行此编译 - 这需要一些CPU.

这就是您可以使用某些操作码缓存(如APC扩展)将操作码存储在内存中的原因 - 避免了冗余编译步骤.


您将能够在Sebastian Bergmann的以下演示文稿中找到有关这些过程的一些有趣信息:PHP编译器内部