require,require_once,include,include_once区别

本文详细解释了PHP中require与include的区别,包括错误处理方式、加载时期的不同,并介绍了如何使用once来避免重复引用文件的问题。


要弄明白这四者的区别,我们先要弄清楚require和include的区别。


1.require和include的区别:
(1)对于错误的处理不同
  include遇到错误时(引用的文件不存在),PHP只是报错,但程序会继续运行下去。
  require遇到错误时,直接报错并停止运行程序。
(2)加载期不同
include是运行期加载,相当于函数调用
requrie是编译期加载

if(1 > 0){
  include 'config.php';
}else{
  include 'setting.php';
}

这段代码运行的时候,config.php这个文件会被引用。而setting.php不会。
类似的代码:
if(1 > 0){
  require 'config.php';
}else{
  require 'setting.php';
}

上面这部分代码,config.php及setting.php都会被引用。因为在没有运行到if这个控制语句前,两个require语句都运行了。

2.加入once之后的区别:
由于在require或者include的过程中可能存在重复定义变量或者函数,为了防止这种情况的发生,在require 和 include加入once来避免重复定义。

参考http://blog.youkuaiyun.com/mengzhongshi/article/details/6956068
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
红包 添加红包
表情包 插入表情
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值