我探索了PHP历史记录和名称Personal Home Page
。
在我发现的简短内容中:
为Web开发人员处理
gcc
,make
或ld
并不好玩。要创建网页(个人主页),他们发现每次重新编译都很复杂。
这就是为什么我们编写的PHP将被解释(甚至HHVM,我们有中间字节码)。
您是否看到任何技术问题,并且提前编译PHP是否明智?有什么计划吗?
PS。我希望PHP能够提前(预编译),而不是JIT。
更新: 正如我发现项目php-compiler支持"提前"编译器选项。
编译 - 提前编译
此编译器模式实际上生成本机机器代码,并将其输出到可执行文件。 这意味着,您可以使用PHP代码并生成独立的二进制文件。在没有VM的情况下实现的。这意味着它(理论上至少)与原生C一样快。 嗯,那不是真的。但它的速度非常快。
答案 0 :(得分:1)
首次调用Python代码时,它(通常)会被解析/解释为字节代码并保存在.pyc文件中然后执行。下次调用代码时,会在.pyc文件中找到提前解释的字节代码并执行该代码。
对于PHP,自PHP 5.5以来,已包含opcode cache。首次调用PHP代码时,它(通常)会一次解析/解释为字节代码并保存在操作码缓存中然后执行。下次调用代码时,将在操作码缓存中找到提前解释的字节代码并执行该代码。
字节代码在性能上与本机代码足够接近。对于Python或PHP来说,提前编译本机的动机并不大。您将放弃快速编辑 - 保存 - 重新加载 - 浏览器开发周期,以获得不必要的性能提升。