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

zend引擎如何编译php代码或php编译器如何工作?,php,compiler-construction,Php,Compiler Construction,大家好,任何人都知道zend引擎是如何编译php代码的。 例如,在java中,我们的代码被编译成字节码,然后再转换成机器语言。比如zend引擎如何编译php代码?请帮帮我。PHP也有同样的想法: 第一步:将PHP源代码(即一些文本)编译成一组操作码 第二步:执行这些操作码 默认情况下,每次执行PHP脚本时都会进行编译,这需要一些CPU 这就是您可以使用一些操作码缓存(如)将操作码存储在内存中的原因——避免了冗余编译步骤 在Sebastian Bergmann的以下演示中,您将能够找到关于

大家好,任何人都知道zend引擎是如何编译php代码的。
例如,在java中,我们的代码被编译成字节码,然后再转换成机器语言。比如zend引擎如何编译php代码?请帮帮我。

PHP也有同样的想法:

  • 第一步:将PHP源代码(即一些文本)编译成一组操作码
  • 第二步:执行这些操作码

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

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



在Sebastian Bergmann的以下演示中,您将能够找到关于这些流程的一些有趣信息:

Zend引擎在PHP内部用作编译器和运行时引擎。PHP脚本被加载到内存中并编译成Zend操作码。这些操作码被执行,生成的HTML被发送到客户端。

你有关于这方面的详细文档吗?请与我分享。我编辑了我的答案,其中有一个演示文稿的链接,提供了一些信息;但这是PHP的一部分,并没有真正包含在教程或任何东西中:fropm core Developers经常会给出的答案是“看看源代码”,链接已经失效,我认为这是相同的演示:(相关)