PHP中include和require的区别实例分析


Posted in PHP onMay 07, 2017

先编辑command.php文件

echo 'hello'.PHP_EOL;

然后编辑console.php文件

for($i=1;$i<=3;++$i){
	require 'command1.php';
}

原本想要包含并执行这个echo,没想到写错了文件名,如果是require,会报出这样的错误:

Warning: require(command1.php): failed to open stream: No such file or directory in console.php on line 4

Fatal error: require(): Failed opening required 'command1.php' (include_path='.') in console.php on line 4
PHP Warning: require(command1.php): failed to open stream: No such file or directory in console.php on line 4
PHP Fatal error: require(): Failed opening required 'command1.php' (include_path='.') in console.php on line 4

如果把require改为include

for($i=1;$i<=3;++$i){
	include 'command1.php';
}

会报出这样的错误:

Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4

Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4

Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4

Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4

Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4

Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
PHP Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4
PHP Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
PHP Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4
PHP Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4
PHP Warning: include(command1.php): failed to open stream: No such file or directory in console.php on line 4
PHP Warning: include(): Failed opening 'command1.php' for inclusion (include_path='.') in console.php on line 4

如果使用require_once或者include_once,只要包含路径正确,那么循环只执行一次。

总结:

使用require,如果文件没有包含成功,就会报出一个fatal error,整个程序就中止了。

使用include,如果文件没有包含成功,就会报出一个普通的warning,之后的代码仍会执行。

如果你的Web程序使用了MVC这种对文件包含强依赖的设计方法,请使用require_once。

PHP 相关文章推荐
PHP5.0正式发布 不完全兼容PHP4 新增多项功能
Oct 09 PHP
发布一个迷你php+AJAX聊天程序[聊天室]提供下载
Jul 21 PHP
php上传文件的增强函数
Jul 21 PHP
PHP isset()与empty()的使用区别详解
Aug 29 PHP
关于二级目录拖拽排序的实现(源码示例下载)
Apr 26 PHP
PHP基于CURL进行POST数据上传实例
Nov 10 PHP
php生成图片缩略图的方法
Apr 07 PHP
php网页版聊天软件实现代码
Aug 12 PHP
php使用str_replace替换多维数组的实现方法分析
Jun 15 PHP
PHP截取发动短信内容的方法
Jul 04 PHP
thinkphp5.1框架容器与依赖注入实例分析
Jul 23 PHP
laravel Validator ajax返回错误信息的方法
Sep 29 PHP
自制PHP框架之设计模式
May 07 #PHP
自制PHP框架之模型与数据库
May 07 #PHP
自制PHP框架之路由与控制器
May 07 #PHP
PHP-CGI远程代码执行漏洞分析与防范
May 07 #PHP
PHP关键特性之命名空间实例详解
May 06 #PHP
PHP 中使用explode()函数切割字符串为数组的示例
May 06 #PHP
Thinkphp 空操作、空控制器、命名空间(详解)
May 05 #PHP
You might like
域名查询代码公布
2006/10/09 PHP
PHP新手上路(十)
2006/10/09 PHP
PHP版微信公众平台红包API
2015/04/02 PHP
PHP5.3新特性小结
2016/02/14 PHP
PHP中Static(静态)关键字功能与用法实例分析
2019/04/05 PHP
JavaScript面向对象之静态与非静态类
2010/02/03 Javascript
用js实现计算加载页面所用的时间
2010/04/02 Javascript
使用jQuery中的when实现多个AJAX请求对应单个回调的例子分享
2014/04/23 Javascript
jQuery中nextAll()方法用法实例
2015/01/07 Javascript
JS获取iframe中marginHeight和marginWidth属性的方法
2015/04/01 Javascript
jquery实现Slide Out Navigation滑出式菜单效果代码
2015/09/07 Javascript
JS深度拷贝Object Array实例分析
2016/03/31 Javascript
Node.js的项目构建工具Grunt的安装与配置教程
2016/05/12 Javascript
jQuery实现别踩白块儿网页版小游戏
2017/01/18 Javascript
详解nodejs微信公众号开发——3.封装消息响应模块
2017/04/10 NodeJs
react-redux中connect()方法详细解析
2017/05/27 Javascript
Angular 表单控件示例代码
2017/06/26 Javascript
Vue.js基础指令实例讲解(各种数据绑定、表单渲染大总结)
2017/07/03 Javascript
Vue2.0权限树组件实现代码
2017/08/29 Javascript
Angular移动端页面input无法输入的解决方法
2017/11/14 Javascript
vue实现点击隐藏与显示实例分享
2019/02/13 Javascript
[00:47]DOTA2荣耀之路6:玩不了啦!
2018/05/30 DOTA
在Python中定义和使用抽象类的方法
2016/06/30 Python
Python有参函数使用代码实例
2020/01/06 Python
python+opencv3生成一个自定义纯色图教程
2020/02/19 Python
全球知名的婚恋交友网站:Match.com
2017/01/05 全球购物
英国袜子店:Sock Shop
2017/01/11 全球购物
Perfume’s Club德国官网:在线购买香水
2019/04/08 全球购物
香港彩色隐形眼镜在线商店:Stunninglens(全球免费送货)
2019/05/10 全球购物
.net面试题
2015/12/22 面试题
事业单位分类改革实施方案
2014/03/21 职场文书
银行职员自我鉴定
2014/04/20 职场文书
学生会个人总结范文
2015/02/15 职场文书
运动会观后感
2015/06/09 职场文书
小学五年级班主任工作经验交流材料
2015/11/02 职场文书
Java 数据结构七大排序使用分析
2022/04/02 Java/Android