2015-11-13 32 views
1

我的信息:PHP解释器Opcache

PHP是使用一个解释编程语言。

解释器是源代码和机器之间的编译软件。

它读取和运行时分析的源代码,并开始基于源代码自身的子程序。

它不是编译或代码翻译成新的东西可能被保存,因为它是一种执行的代码。

的Opcache被Zend能够存储预编译的字节码,并再次使用它。 (我知道是怎么回事通常工作。)

http://www.sitepoint.com/understanding-opcache/

我的问题:

在什么地方Opcache从翻译时不编译得到他的预编译脚本?

回答

0

它没有将代码编译或翻译成可以保存的新东西,因为它是一种执行代码。

这是不正确的。解释器做的第一件事是PHP源代码编译成可执行的字节码格式,然后被执行。

这不是什么不同.NET和Java这样做,但他们做的先发制人的时间提前,而PHP做它的按需为执行该脚本。

像OPcache这样的东西需要这个字节码和缓存,保存解释器不必每次执行脚本时获取源代码和解析它。