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 相关文章推荐
用PHP连接Oracle数据库
Oct 09 PHP
php4的session功能评述(二)
Oct 09 PHP
PHP 配置open_basedir 让各虚拟站点独立运行
Nov 12 PHP
在命令行下运行PHP脚本[带参数]的方法
Jan 22 PHP
php 中英文语言转换类代码
Aug 11 PHP
PHP输出数组中重名的元素的几种处理方法
Sep 05 PHP
PHP设置图片文件上传大小的具体实现方法
Oct 11 PHP
PHP实现发送邮件的方法(基于简单邮件发送类)
Dec 17 PHP
详解YII关联查询
Jan 10 PHP
php实现文章置顶功能的方法
Oct 20 PHP
php使用PDO从数据库表中读取数据的实现方法(必看)
Jun 02 PHP
PHP dirname(__FILE__)原理及用法解析
Oct 28 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
php实现首页链接查询 友情链接检查的代码
2010/01/05 PHP
浏览器预览PHP文件时顶部出现空白影响布局分析原因及解决办法
2013/01/11 PHP
PHP中使用file_get_contents post数据代码例子
2015/02/13 PHP
PHP+MYSQL中文乱码问题
2015/07/01 PHP
(function(){})()的用法与优点
2007/03/11 Javascript
jquery ajax 检测用户注册时用户名是否存在
2009/11/03 Javascript
json定义及jquery操作json的方法
2016/10/03 Javascript
微信小程序中单位rpx和rem的使用
2016/12/06 Javascript
jQuery插件Echarts实现的渐变色柱状图
2017/03/23 jQuery
jQuery Tree Multiselect使用详解
2017/05/02 jQuery
浅谈原型对象的常用开发模式
2017/07/22 Javascript
Node.js 使用AngularJS的方法示例
2018/05/11 Javascript
vue3.0 CLI - 3.2 路由的初级使用教程
2018/09/20 Javascript
通过JavaScript下载文件到本地的方法(单文件)
2019/03/17 Javascript
arctext.js实现文字平滑弯曲弧形效果的插件
2019/05/13 Javascript
浅谈python装饰器探究与参数的领取
2017/12/01 Python
python+matplotlib绘制3D条形图实例代码
2018/01/17 Python
详解pyqt5 动画在QThread线程中无法运行问题
2018/05/05 Python
Python实现的括号匹配判断功能示例
2018/08/25 Python
获取django框架orm query执行的sql语句实现方法分析
2019/06/20 Python
opencv resize图片为正方形尺寸的实现方法
2019/12/26 Python
TensorFlow 显存使用机制详解
2020/02/03 Python
学生如何注册Pycharm专业版以及pycharm的安装
2020/09/24 Python
宝塔面板出现“open_basedir restriction in effect. ”的解决方法
2021/03/14 PHP
CSS3美化表单控件全集
2016/06/29 HTML / CSS
美国顶级品牌男士大码服装店:DXL
2017/08/30 全球购物
美国著名手表网站:Timepiece
2017/11/15 全球购物
中国旅游网站:途牛旅游网
2019/09/29 全球购物
学校门卫工作职责
2013/12/07 职场文书
一年级数学教学反思
2014/02/01 职场文书
旅游管理专业大学生职业规划书
2014/02/27 职场文书
诚信承诺书模板
2014/05/26 职场文书
2015年世界无烟日活动方案
2015/05/04 职场文书
小学少先队活动总结
2015/05/08 职场文书
Python实现机器学习算法的分类
2021/06/03 Python
Tomcat执行startup.bat出现闪退的原因及解决办法
2022/04/20 Servers