如何加快我的PHP包含?
我有一个PHP文件,它包含了我调用的几乎所有内容。这个include文件包含其他几个php文件。我之所以使用这一个文件来包含所有内容,是因为我的开发人员和生产服务器之间存在路径差异,只需包含一个文件就可以了,而且我知道我有我需要的类如何加快我的PHP包含?,php,caching,Php,Caching,我有一个PHP文件,它包含了我调用的几乎所有内容。这个include文件包含其他几个php文件。我之所以使用这一个文件来包含所有内容,是因为我的开发人员和生产服务器之间存在路径差异,只需包含一个文件就可以了,而且我知道我有我需要的类 有没有什么简单的方法可以缓存文件,或者加快加载速度?您可以为PHP安装操作码缓存 操作码缓存通过将PHP脚本的编译状态缓存到RAM中,并直接从RAM中使用编译版本,从而减少PHP脚本的编译时间,从而优化性能。这将增加页面生成时间的速率。这也意味着您的文件将只
有没有什么简单的方法可以缓存文件,或者加快加载速度?您可以为PHP安装操作码缓存
操作码缓存通过将PHP脚本的编译状态缓存到RAM中,并直接从RAM中使用编译版本,从而减少PHP脚本的编译时间,从而优化性能。这将增加页面生成时间的速率。这也意味着您的文件将只包含一次。有很多方法可以处理路径差异,而不是每次都加载所有内容。例如,您可以在所有文件系统操作中定义一个常量并将其用作前缀:
define('DOC_ROOT', '/var/www/foo');
require_once DOC_ROOT . '/lib/bar.php';
或者,您可以依赖系统的DOCUMENT_根变量(如果已设置并正确):
或者你可以使用。或者你可以使用
除此之外,每次运行脚本时,PHP都会使用您指示的PHP源代码查找并解析每个文件。如果您安装了。我们讨论的是什么样的加载时间差,您可以缩短第二部分?包含,甚至包含其他文件的文件都不应该被注意到。您是否同时也在实例化类?连接到数据库?您是否尝试过在没有文件包含的情况下加载初始页面以查看时间差?编写一个小脚本,创建一次“主包含”,并将结果写入一个新文件,然后用于所有其他页面的包含?这样,您只需执行一次包含的大量操作。但是你必须手动执行。当我执行一个相当简单的AJAX请求时,它可能需要3秒钟才能返回,当它只是在拉HTMLI时。我正在使用文档根来正确加载所有内容,尽管我必须纠正它,因为在一台服务器上它没有结束斜杠,而在另一台服务器上它有结束斜杠。我添加了类自动加载,这似乎有很大帮助。谢谢。+1用于类自动加载,但是对于始终包含的类,您应该放置
include
语句。例如,如果一个库类扩展了另一个库类,那么您应该在文件的顶部有一次require\u
(这在许多框架中都是这样做的)。
require_once $_SERVER['DOCUMENT_ROOT'] . '/lib/bar.php';