php处理包含文件

Ave*_*Joe 7 php performance internals include

这个问题与PHP引擎的内部机制有关.我要求它努力理解文件包含过程.

比如,你有一个20,000行包含文件(类似"functions_library.php"),它包含在你所有的PHP脚本中.

当你的一个php脚本加载该文件时,PHP是否检查/验证该包含文件在语法上是否正确?这个过程是否会在每次页面加载时反复发生?

要么...

PHP是否注意文件的最后修改日期?如果事实证明自上次检查以来没有对它进行任何更改,它是否只是忽略了检查?

Lou*_*eau 4

在默认安装中,每次都会解析该文件。但是,建议 PHP 的任何生产安装都具有字节码缓存,例如APC许多其他缓存。当使用字节码缓存时,第一次解析脚本并将解释后的代码存储在内存中。

不同的配置可能会改变检查文件修改的频率。在某些配置下,为了获得非常高的性能,可能需要手动刷新或重新启动 Web 服务器。