频道栏目
首页 > 程序开发 > 软件开发 > 其他 > 正文
require和include的异同
2017-05-19 09:59:00      个评论    来源:心纯志向的博客  
收藏   我要投稿
require和include的异同。PHP中require和include基本的区别,其实在一般PHP开发中require和include这2个函数的功能大致相同,但是有一些区别,请看下文讲解。
第一点:require()和include()除了怎样处理失败之外在各方面都完全一样。include()产生一个警告而require()则导致一个致命错误。换句话说,如果你想在丢失文件时停止处理页面,那就用require()吧,它直接会中止脚本。而include()就不是这样,脚本会继续运行,但是会抛出一个Notice级别的错误。同时也要确认设置了合适的include_path。
就是说再解析程序时即读取require的文件,而不是解析后,如果不能读取到被require的文件,就不能进行下一步动作。所以,不被正确包含就会导致程序的文件,用require比较好。

第二点:require()无论如何都会包含文件,而include()可以有选择地包含:
?
1 2 3 4 5 6 7 8 if(FALSE){ require('a.php'); } if(FALSE){ include('b.php'); } ?>
比如上面这段代码,a.php一定会被包含,而b.php一定不会被包含。require类似于一次预扫描,在程序执行时,无论在函数里或是函数外,都将先把require的文件执行,且只执行一次。而include则是每执行一次就调用一次文件,即这次执行后,下次再执行执行到这里,仍将再执行一次。大家应该明白这个区别了吧:)
同时可以看下require_once和include_once的区别。
require_once() 语句在脚本执行期间包括并运行指定文件。此行为和 require() 语句类似,唯一区别是如果该文件中的代码已经被包括了,则不会再次包括。

include_once() 语句在脚本执行期间包括并运行指定文件。此行为和 include() 语句类似,唯一区别是如果该文件中的代码已经被包括了,则不会再次包括。如同此语句名字暗示的那样,只会包括一次。

再谈include和require区别

include()和require()语句的不同在于它们如何处理错误。使用require ()调用文件错误时,将会停止整个程序,调用include()遇到相同的错误,则会生成警告并停止执行包含文件,跳出调用代码然后继续执行。前者行为更加激烈火,故require()和require_once()用于包含库文件时更加安全,而include ()和include_once()则适用加模析的操作。require()和require_once()都是语句而不是函数。这意味着使用它们的时候可以省略括号

点击复制链接 与好友分享!回本站首页
上一篇:Spring Boot学习(五)
下一篇:Spring实践异常记录self
相关文章
图文推荐

关于我们 | 联系我们 | 广告服务 | 投资合作 | 版权申明 | 在线帮助 | 网站地图 | 作品发布 | Vip技术培训

版权所有: 红黑联盟--致力于做实用的IT技术学习网站