php中include_once,require_once,和include,require的使用场景和区别。

 前几天,公司有个大牛来给我们这些菜鸟讲PHP,他讲的主要是些干货,和语法啥的都没关系,其中有一个思考问题:

         php中include_once,require_once,和include,require的使用场景和区别?

         很多人都知道include,require,或者include_once和include的区别,这里我就不说了,但是很少人深层次的去理解为什么有了include_once,还需要include做什么?

        当时情况也是这样的,我也觉得很有意思,因为之前我也犯过这个错误,觉得include_once或者require_once能避免文件重复加载,那每次用它就行了,干嘛还要用include,以至于我很长一段时间写的php代码,用的都是*_once。直到有个人说我这样写不好,我还和他争执了一会,觉得这样可以避免重复加载.......然后到性能这块...才恍然大悟。

        存在既合理,相信很多人都明白这个道理,程序执行流程越少,耗时越少,说明越高效,而一个设计优良的程序,往往是高效,我们回到正题,include_once 在每次加载文件前需要判断文件是否被加载,而include则不用,所以其实从性能上来说include是更高效的,现在肯定有人问,那它不能避免重复加载啊,的确,但是程序是人写的,而人之所以称为人,就是我们存在思维,回到段首那句话,一个设计优良的程序我们从设计之初就可以避免这些东西。呵呵,那如果不能避免呢?用include_once啊。。。。

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
includeinclude_once是PHP用来包含文件的两个关键字。它们的主要区别在于对于同一个文件的多次包含的处理方式。 include关键字会在每次执行到include语句时都包含指定的文件,即使该文件已经被包含过了。这可能会导致重复定义的问题或其他不必要的错误。 而include_once关键字则会在执行到include_once语句时,先检查该文件是否已经被包含过。如果已经被包含过,则不会再次包含。 因此,使用include_once可以避免重复包含文件,减少重复定义或其他错误的发生。而使用include则会在每次执行到include语句时都重新包含文件,无论该文件是否已经被包含过。 总结起来,include关键字每次执行都会包含指定的文件,而include_once关键字只会在文件未被包含过时才会包含。<span class="em">1</span><span class="em">2</span><span class="em">3</span> #### 引用[.reference_title] - *1* [PHP函数include include_once requirerequire_once的区别](https://blog.csdn.net/weixin_30263277/article/details/95152309)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *2* [深入理解requirerequire_once与include以及include_once的区别](https://download.csdn.net/download/weixin_38724229/13059079)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] - *3* [PHP includeinclude_once 的区别](https://blog.csdn.net/u012222248/article/details/86609544)[target="_blank" data-report-click={"spm":"1018.2226.3001.9630","extra":{"utm_source":"vip_chatgpt_common_search_pc_result","utm_medium":"distribute.pc_search_result.none-task-cask-2~all~insert_cask~default-1-null.142^v93^chatsearchT3_1"}}] [.reference_item style="max-width: 33.333333333333336%"] [ .reference_list ]
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值