课程咨询 :13623629309

太原PHP培训 > 达内新闻 > php两种include加载文件方式效率比较
  • php两种include加载文件方式效率比较

    发布:IT技术博客大学习      来源:IT技术博客大学习      时间:2016-10-12

  • php两种include加载文件方式效率比较

    php开发的过程中,有很多种加载的方式,今天太原php培训机构讲述两种加载的方式。

    这两天抽了点时间继续完善“X计划的核心部分,核心嘛,就要加载必须的文件,尝试了两种方法,发现效率是不同的,分享一下吧~先来说说两种方式:

    1)定义一个字符串变量,里面保存要加载的文件列表。然后foreach加载。

    $a = '/a.class.php;/Util/b.class.php;/Util/c.class.php';

    $b = '/d.php;/e.class.php;/f.class.php;/g.class.php';

    // 加载基本系统文件

    $kernel_require_files = explode(';', $a);//SYS_REQUIRE_LIB_FILE_LIST);

    foreach($kernel_require_files as $f){

    require_once(SYS_LIB_PATH.'/System'.$f);

    }

    // 加载基本系统文件

    $kernel_require_files = explode(';', $b);//SYS_BASE_FILE_LIST);

    foreach($kernel_require_files as $f){

    require_once(KERNEL_PATH.$f);

    }

    2)把所有的要加载的文件都在一个include文件里面加载,当前页直接include这个include文件。

    include.php文件内容

    require_once('func.php');

    require_once('LangManager.class.php');

    require_once('_KernelAutoLoader.class.php');

    require_once('ApplicationSettingManager.class.php');

    require_once('lib/System/Activator.class.php');

    require_once('lib/System/Util/CXML.class.php');

    require_once('lib/System/Util/CWeb.class.php');

    我个人认为第二种方法效率高些,因为没有foreach这些多余的运算~凡事要论证,不能凭空想象,所以,我验证了一下。以下是用两种方法随机10次加载所消耗的时间:

    foreach

    0.017754077911377

    0.017686128616333

    0.017347097396851

    0.018272161483765

    0.018272161483765

    0.018401145935059

    0.018187046051025

    0.020787000656128

    0.018001079559326

    0.017963171005249

    include_once('include.php');

    0.025792121887207

    0.024733066558838

    0.025041103363037

    0.024915933609009

    0.024657011032104

    0.024134159088135

    0.025845050811768

    0.024954080581665

    0.024757146835327

    0.02684497833252

    另外,又尝试了一下,直接在当前页面加载所有文件

    0.022285938262939

    0.024394035339355

    0.023194074630737

    0.023229122161865

    0.024644136428833

    0.023538112640381

    0.024240016937256

    0.025094032287598

    0.023231029510498

    0.02339506149292

    结果令我吃惊啊!竟然第一种貌似最慢的方法,耗时最少,而直接在当前页面加载多个文件耗时也不少啊~

    原因?未知啊,希望明眼的给个答案,先不管那么多"X计划"的核心加载部分就用第一种方法啦~

    好了,今天就给大家讲这么多吧,喜欢我的内容可以关注或者分享(微信公众平台:tytedu)选择太原达内培训,不再孤军奋战,轻轻松松做IT高薪白领。太原达内培训带领有明确目标的学子迈向成功之路!

上一篇:Mac升级系统macOS Sierra后PHP不编译

下一篇:php使用tcp长连接的一种优化思路

最新开班日期  |  更多

php高级开发名企定制班(剩2个名额)

php高级开发名企定制班(剩2个名额)

开班日期:12-30

php高级开发周末班(剩5个名额)

php高级开发周末班(剩5个名额)

开班日期:12-30

php高级开发免费试听(剩5个名额)

php高级开发免费试听(剩5个名额)

开班日期:12-30

更多高级开发工程师精品班

更多高级开发工程师精品班

开班日期:12-30

  • 地址:山西省太原市小店区学府街长治路高新国际A座24层
  • 课程培训电话:13623629309     全国服务监督电话:400-827-0010
  • 服务邮箱 ts@tedu.cn
  • 2001-2016 达内国际公司(TARENA INTERNATIONAL,INC.) 版权所有 京ICP证08000853号-56

    在线客服系统