0
在做了一些研究之后,我正在努力寻找关于如何缓存PHP include()
文件的明确答案。缓存了本地PHP include()文件吗?
我发现的最接近的是here,但它对我来说并不合理。
我有几种方法使用其他方法从不同的文件,我想避免将include()的只是在文件的顶部,但我不知道这可能会影响性能。
任何帮助表示赞赏。
在做了一些研究之后,我正在努力寻找关于如何缓存PHP include()
文件的明确答案。缓存了本地PHP include()文件吗?
我发现的最接近的是here,但它对我来说并不合理。
我有几种方法使用其他方法从不同的文件,我想避免将include()的只是在文件的顶部,但我不知道这可能会影响性能。
任何帮助表示赞赏。
PHP是一种解释型语言。默认的PHP运行时将PHP源代码编译为一个名为PHP字节码的中间表示,然后执行该表示。字节码缓存将编译后的PHP源代码表示存储在共享内存中。这消除了在每个请求上加载和编译源代码的需求,从而导致性能显着提高(每秒请求数量多达70%)。
的基本理念,执行PHP脚本时有两个步骤:
为了防止冗余编译,您可以使用一些操作码缓存机制。
将PHP脚本编译为操作码后,这些脚本将保存在RAM中,并在下次执行脚本时直接从内存中使用;防止编译一次又一次地完成。
更多
感谢您的答复。这与'include()'特别有关。如果我在多个方法中包含()同一个文件,那么它只执行一次'include()',然后从那里提取已编译的代码? –
字节码被缓存在内存中,但带有文件名的索引;您仍然需要'include'告诉PHP要包含哪些代码......然后它会查看该文件的字节码是否在操作码缓存中,或者是否必须从磁盘检索文件 –
如果您正在编写OO代码,并且希望避免编写所有这些内容,然后PHP提供自动加载器 –