在PHP中,编译时和运行时是什么意思?

前端之家收集整理的这篇文章主要介绍了在PHP中,编译时和运行时是什么意思?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
参见英文答案 > Is PHP compiled or interpreted?13个
PHP是一种解释语言,不编译.然而,我遇到了一本书,在编译时提到PHP中发生的事情,PHP手册指出了一个声明一个 const happens at compile-time内容.由于没有编译PHP,所以使用与PHP相关的术语编译时期.

如果它只是意味着“当脚本被读取并被翻译成解释器子程序”时,那么术语编译时和运行时间之间有什么区别?

PHP代码遍历了编译成PHP操作码的步骤.这个想法已经在各种平台上实现,尤其是Java.理论上,通过使用单独的“虚拟机”运行时来运行Opcodes,语言设计人员可以将语言与可移植性问题分开.

您可以找到these Opcodes in the manual的列表

在没有操作码缓存的典型PHP环境中,编译步骤和“运行时”步骤是无法区分的,但是当您引入“加速器/ opscode缓存”(如APC或Zend Platform产品)时,您可以看到这些过程中的单独步骤.

一旦脚本被编译成PHP Opscodes,它就可以从缓存运行,而不必从源重新编译,这是这些加速器可以大大提高性能的地方.

如果您专注于PHP的“运行时”方面,与运行为本地操作系统程序的c / c编译/链接语言相比,您将看到PHP的“解释”性质,因为它需要运行时环境.

PHP的情况下,PHP程序是本地操作系统程序(或本机作为本机OS Web服务器的模块).

与Java运行在“Java虚拟机(JVM)”中的方式不同,PHP的脚本在PHP中运行,因此不包含操作将如何由操作系统本机执行的细节.

猜你在找的PHP相关文章