php中include_once,require_once,和include,require的使用场景和区别。
2016-07-01 16:45
543 查看
前几天,公司有个大牛来给我们这些菜鸟讲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啊。。。。
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啊。。。。
相关文章推荐
- 一个关于if else容易迷惑的问题
- PHP5.2.*防止Hash冲突拒绝服务攻击的Patch
- 深入理解PHP之匿名函数
- JSP/PHP基于Ajax的分页功能实现
- 关于PHP通过PDO用中文条件查询MySQL的问题。
- 什么是设计模式
- maven使用经验集
- PHP数据库长连接mysql_pconnect的细节
- Php Installing An Expansion
- linux make使用技巧
- rem : web app适配的秘密武器
- jquery高级应用之Deferred对象
- php7 读取php.ini[4]
- DB2编程序技巧(1)
- DB2编程序技巧 (四)
- DB2编程序技巧 (六)
- DB2编程序技巧 (三)
- DB2编程序技巧 (九)