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音乐采集(部分代码)
Feb 14 PHP
PHP导出MySQL数据到Excel文件(fputcsv)
Jul 03 PHP
PHP 基于Yii框架中使用smarty模板的方法详解
Jun 13 PHP
解析将多维数组转换为支持curl提交的一维数组格式
Jul 08 PHP
Mac系统下使用brew搭建PHP(LNMP/LAMP)开发环境
Mar 03 PHP
PHP模板引擎smarty详细介绍
May 26 PHP
使用URL传输SESSION信息
Jul 14 PHP
HTML中嵌入PHP的简单方法
Feb 16 PHP
php仿微信红包分配算法的实现方法
May 13 PHP
php实现单笔转账到支付宝功能
Oct 09 PHP
PHP函数积累总结
Mar 19 PHP
从ThinkPHP3.2.3过渡到ThinkPHP5.0学习笔记图文详解
Apr 03 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下用rmdir实现删除目录的三种方法小结
2008/04/20 PHP
php session 错误
2009/05/21 PHP
Could not load type System.ServiceModel.Activation.HttpModule解决办法
2012/12/29 PHP
phplot生成图片类用法详解
2015/01/06 PHP
基于php实现的验证码小程序
2016/12/13 PHP
php使用变量动态创建类的对象用法示例
2017/02/06 PHP
thinkphp框架无限级栏目的排序功能实现方法示例
2020/03/29 PHP
Save a File Using a File Save Dialog Box
2007/06/18 Javascript
jQuery怎么解析Json字符串(Json格式/Json对象)
2013/08/09 Javascript
js使用数组判断提交数据是否存在相同数据
2013/11/27 Javascript
WordPress 单页面上一页下一页的实现方法【附代码】
2016/03/10 Javascript
几种经典排序算法的JS实现方法
2016/03/25 Javascript
浅谈JavaScript变量的自动转换和语句
2016/06/12 Javascript
BootStrap使用popover插件实现鼠标经过显示并保持显示框
2016/06/23 Javascript
jQuery自定义元素右键点击事件(实现案例)
2017/04/28 jQuery
详解使用vue实现tab 切换操作
2017/07/03 Javascript
vue.js 实现图片本地预览 裁剪 压缩 上传功能
2018/03/01 Javascript
基于jQuery.i18n实现web前端的国际化
2018/05/04 jQuery
小程序数据通信方法大全(推荐)
2019/04/15 Javascript
Vue使用watch监听一个对象中的属性的实现方法
2019/05/10 Javascript
十分钟教你上手ES2020新特性
2020/02/12 Javascript
javascript设计模式 ? 职责链模式原理与用法实例分析
2020/04/16 Javascript
Python实现Const详解
2015/01/27 Python
Python实现的手机号归属地相关信息查询功能示例
2017/06/08 Python
windows下python之mysqldb模块安装方法
2017/09/07 Python
对python中UDP,socket的使用详解
2019/08/22 Python
如何解决django-celery启动后迅速关闭
2019/10/16 Python
用什么库写 Python 命令行程序(示例代码详解)
2020/02/20 Python
详解anaconda安装步骤
2020/11/23 Python
Hanro官网:奢华男士和女士内衣、睡衣和家居服
2018/10/25 全球购物
创造美妙香氛体验:Aera扩散器和香水
2018/11/25 全球购物
美国巧克力喷泉品牌:Sephra
2019/05/05 全球购物
2014党的群众路线教育实践活动学习心得体会
2014/10/31 职场文书
劳动争议仲裁代理词
2015/05/25 职场文书
CSS中em的正确打开方式详解
2021/04/08 HTML / CSS
python绘制简单直方图(质量分布图)的方法
2022/04/21 Python