reeuqire与include的区别

include 和 require 都能把另外一个文件包含到当前文件中,他们有什么区别?
Include 和 include_once 又有什么区别?
 
二者区别只有一个,那就是对包含文件的需求程度,include 就是包含,如果被包含的文件不存在的话,那么则会提示一个错误,但是程序会继续执行下去。
 
而 require 意思是需要,如果被包含文件不存在或者无法打开的时候,则会提示错误,并且会终止程序的执行。
 
requireinclude 几乎完全一样,除了处理失败的方式不同之外。require 在出错时产生 E_COMPILE_ERROR 级别的错误。换句话说将导致脚本中止而 include 只产生警告(E_WARNING),脚本会继续运行。 

被包含文件先按参数给出的路径寻找,如果没有给出目录(只有文件名)时则按照 include_path 指定的目录寻找。如果在 include_path 下没找到该文件则 include 最后才在调用脚本文件所在的目录和当前工作目录下寻找。如果最后仍未找到文件则 include 结构会发出一条 E_WARNING ;这一点和 require 不同,后者会发出一个 E_ERROR

注意如果文件无法访问, includerequire 在分别发出最后的 E_WARNINGE_ERROR 之前,都会发出额外一条 E_WARNING。 

 
这两种结构除了在如何处理失败之外完全一样。once 的意思是一次,那么 include_once 和 require_once 表示只包含一次,避免重复包含。
 

posted on   春分夏至  阅读(13)  评论(0编辑  收藏  举报

相关博文:
阅读排行:
· TypeScript + Deepseek 打造卜卦网站:技术与玄学的结合
· Manus的开源复刻OpenManus初探
· AI 智能体引爆开源社区「GitHub 热点速览」
· 从HTTP原因短语缺失研究HTTP/2和HTTP/3的设计差异
· 三行代码完成国际化适配,妙~啊~

导航

< 2025年3月 >
23 24 25 26 27 28 1
2 3 4 5 6 7 8
9 10 11 12 13 14 15
16 17 18 19 20 21 22
23 24 25 26 27 28 29
30 31 1 2 3 4 5
点击右上角即可分享
微信分享提示