为了账号安全,请及时绑定邮箱和手机立即绑定

PHP是编译还是解释?

PHP是编译还是解释?

PHP
三国纷争 2019-10-08 14:59:54
PHP是编译还是解释?
查看完整描述

4 回答

?
GCT1015

TA贡献1827条经验 获得超4个赞

PHP是一种解释型语言。可以解释PHP的二进制文件已编译,但是您编写的文件却被解释。


您可以在Wikipedia页面上看到更多有关口译语言的信息


查看完整回答
反对 回复 2019-10-08
?
函数式编程

TA贡献1807条经验 获得超9个赞

都。PHP被编译为中间字节码,然后由运行时引擎解释。


PHP编译器的工作是解析您的PHP代码,并将其转换为适合运行时引擎的形式。其任务包括:


忽略评论

解析变量,函数名称等,并创建符号表

构造程序的抽象语法树

写字节码

根据您的PHP设置,此步骤通常在第一次调用脚本时仅执行一次。缓存编译器输出以加快后续使用的访问速度。但是,如果脚本被修改,则再次执行编译步骤。


调用脚本时,运行时引擎将遍历AST和字节码。符号表用于存储变量的值并提供函数的字节码地址。


对于在某种虚拟运行时机器(包括Perl,Java,Ruby,Smalltalk等)上运行的语言而言,这种编译为字节码并在运行时进行解释的过程是典型的。


查看完整回答
反对 回复 2019-10-08
?
有只小跳蛙

TA贡献1824条经验 获得超8个赞

一个编译后的代码可以直接通过电脑的CPU来执行。也就是说,可执行代码以CPU的本地语言指定

解释语言的代码必须在运行时从任何格式转换为CPU机器指令。该翻译由口译员完成。

不能说一种语言是解释性或编译性的,因为解释性和编译性都是该特定语言实现属性,而不是该语言本身的属性。因此,任何语言都可以编译或解释-它仅取决于您所使用的特定实现。

最广泛使用的PHP实现由Zend Engine提供支持,并简称为PHP。ZendEngine将PHP源代码编译成可以执行的格式,因此Zend Engine充当解释器


查看完整回答
反对 回复 2019-10-08
  • 4 回答
  • 0 关注
  • 704 浏览

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信