在php中,我们有时会在一个初始化文件(eg:ini.php)中通过require()函数引入多个文件。
eg:在ini.php中
require 'a.php';
require 'b.php';
require 'c.php';
require 'd.php';
然后,我们会在某个脚本里(eg:example.php),
require 'ini.php';
但问题是:在example.php中,我们只需要用到a.php和b.php里面的函数,而不需要c.php和d.php,那这样会不会导致php在require的时候,由于引入了多余的文件,而耗费了多余的执行时间,从而影响效率呢?
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号
引入不需要的
c.php和d.php会有一定的效率损耗(首先是额外的读硬盘,另外就是看你在这两个php文件里做了些什么操作——无论如何有额外损耗)。你可以根据不同的页面在
ini.php里判断需要引入的文件,如:像我们平时开发时,会使用一个
Loader类来加载需要的文件,突出一个按需加载,你可以参考一下:autoloader是必须的,PHP程序应该只在autoloader的实现内部有一个require,然后最多在入口文件有第二个require来加载autoloader,其余的require都是耍流氓
参考我的激进版本PHP开发实践
顺便,还有个更恶劣的东西叫
require_once,被PHP开发组的laruence建议避免使用