84669 personnes étudient
152542 personnes étudient
20005 personnes étudient
5487 personnes étudient
7821 personnes étudient
359900 personnes étudient
3350 personnes étudient
180660 personnes étudient
48569 personnes étudient
18603 personnes étudient
40936 personnes étudient
1549 personnes étudient
1183 personnes étudient
32909 personnes étudient
PHP是解释型语言吗?使用APC之后呢?
人生最曼妙的风景,竟是内心的淡定与从容!
现在语言的发展,一门语言是否是解释型已经不那么容易分辨了。
你说PHP是解释型语言,Facebook很早就开发过hiphop编译器,将PHP编译成C++再编译成二进制。
你说Python是解释型语言,Cython是用python语法进行开发最后编译成二进制。
你说用解释器就是解释型语言,依赖于JVM的一大票语言要跟你急了。
解释型语言可以使用某种编译器,但它依旧是解释型语言。语言解释器同样需要使用编译原理。判断一种语言是编译器还是解释器,需要看该语言是否需要一个虚拟机(解释器)才可以运行。
通常,解释型语言使用前被编译为字节码,虚拟机动态执行字节码。为了提高性能,虚拟机执行代码时,可以利用 JIT 技术来动态的把字节码翻译成机器码。
因为字节码它不可能脱离虚拟机运行,因此它依旧是解释型语言。简而言之,编译型语言的编译(编译到机器码)发生在运行之前,解释型语言的编译发生在每一次运行时。
有些语言同时是编译型和解释型语言。可以在调试时使用解释器,调试后使用编译器。最著名的例子是 Lisp。有人曾在 Parrot 虚拟机上实现了 C 语言解释器,支持 C99 标准。
PHP是解释型语言,将PHP代码解释为opcode之后再交由Zend引擎执行。
使用APC只是缓存了opcode,减少了PHP解释为opcode这一步骤的时间而已。
解释型的
现在语言的发展,一门语言是否是解释型已经不那么容易分辨了。
你说PHP是解释型语言,Facebook很早就开发过hiphop编译器,将PHP编译成C++再编译成二进制。
你说Python是解释型语言,Cython是用python语法进行开发最后编译成二进制。
你说用解释器就是解释型语言,依赖于JVM的一大票语言要跟你急了。
解释型语言可以使用某种编译器,但它依旧是解释型语言。语言解释器同样需要使用编译原理。判断一种语言是编译器还是解释器,需要看该语言是否需要一个虚拟机(解释器)才可以运行。
通常,解释型语言使用前被编译为字节码,虚拟机动态执行字节码。为了提高性能,虚拟机执行代码时,可以利用 JIT 技术来动态的把字节码翻译成机器码。
因为字节码它不可能脱离虚拟机运行,因此它依旧是解释型语言。简而言之,编译型语言的编译(编译到机器码)发生在运行之前,解释型语言的编译发生在每一次运行时。
有些语言同时是编译型和解释型语言。可以在调试时使用解释器,调试后使用编译器。最著名的例子是 Lisp。有人曾在 Parrot 虚拟机上实现了 C 语言解释器,支持 C99 标准。
PHP是解释型语言,将PHP代码解释为opcode之后再交由Zend引擎执行。
使用APC只是缓存了opcode,减少了PHP解释为opcode这一步骤的时间而已。
解释型的