【问题标题】:Does using require_once() for un-used files slow down the page? [duplicate]对未使用的文件使用 require_once() 会减慢页面速度吗? [复制]
【发布时间】:2011-08-28 10:56:31
【问题描述】:

可能重复:
Why is require_once so bad to use?

我正在尝试加快我正在开发的网站 (cms),它包含大量代码。我有很多类文件(大约 10 个)和一些函数文件,所有这些文件都在 config.php 文件中。在每一页上,我都使用require_once("config.php");,其中包含我所有的类文件。

这是我的问题:我的大多数类文件都是为单个页面制作的(例如 viewArticle.class.php 仅在页面上用于显示文章),是否会减慢我的脚本仍然包含这些文件config.php 是否没有被使用?

我只是想看看是否有人知道确切的答案或有任何经验,然后才花所有时间提出解决方案,以便只运行需要使用的文件。

基本上,如果不使用类文件,是否会减慢我的脚本包含类文件的速度?

谢谢

【问题讨论】:

  • @Henrik P. Hessel 我认为问题更多是关于包含未使用的文件而不是require_once

标签: php performance require-once


【解决方案1】:

require_once() 只会解析文件一次,并且不会对后续调用造成任何显着的性能影响。但是,如果您require() 一个从未 被使用过的文件,那么您将获得解析器加载和解析代码的不必要开销。

在流量相对较低的小型站点上,它应该不会对您的服务器资源产生可怕的影响,但是随着流量的增加,所有不必要的包含可能会开始影响性能。

【讨论】:

  • 该网站每月获得大约 1200 万次以上的浏览量,所以我认为这么小的事情可能会产生影响。感谢您的帮助。
【解决方案2】:

如果您只是在谈论类和类文件,您可能需要查看__autoload。这只会在请求/使用时加载文件和类。

【讨论】:

  • spl_autoload_register (php.net/spl_autoload_register) 在我看来更好,因为它使多个加载器成为可能。
  • @antennen 感谢您的加入。
猜你喜欢
  • 2011-11-17
  • 2011-02-12
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-09-20
  • 1970-01-01
  • 2012-01-17
相关资源
最近更新 更多