php 中include()与require()的对比


Posted in PHP onOctober 09, 2006

php的require()与include(),在性能方面并无大的不同。

仅有的一些不同在于:

include()执行时文件每次都要进行读取和评估;
require()执行时文件只处理一次(实际上,文件内容替换了require()语句)。
即如果有包含这些指令之一的代码和可能执行多次的代码,则使用require()效率比较高。

另外,如果每次执行代码时要读取不同的文件,或有通过一组文件叠代的循环,就应该使用include(),因为可以给想要包括的文件名设置一个变量,当参数为include()时使用这个变量。

php的require()性能与include()虽然有相似的地方,但是通过自己的学习和查找,还是找到了6点区别如下。

1、
不同之处在于,对include()来说,在include()执行时文件每次都要进行读取和评估;
而对于require()来说,文件只处理一次(实际上,文件内容替换了require()语句)。
这就意味着如果有包含这些指令之一的代码和可能执行多次的代码,则使用require()效率比较高。

2、
require是只执行一次的,不,这么说不恰当。应当说,require是先替代,将指定文件的内容代进来,再运行,所以它不知道你是否设置了FOR循环。而include语句,

是什么时候执行到了,什么把指定文件的内容代进来,继续执行。
所以,如果每次执行代码时想读取不同的文件,或者有通过一组文件叠代的循环,就使用 include(),因为可以给想要包括的文件名设置一个变量,当参数为include()

时使用这个变量。

3、
include在执行时,如果 include 进来的文件发生错误的话,不会立刻停止;而 require 则会立刻终止程序,不再往下执行。

4、include可以用在循环; require不行。

5、include有返回值,而require没有(可能因为如此require的速度比include快)

ok.php里的代码为 echo "ok!";

$login = include('ok.php');
if(!empty($login)){ echo "文件包含成功";
}else{ echo "文件包含失败"; }

最后返回结果为:ok!文件包含成功

只要ok.php里有语句存在,就会返回成功。

在举一个例子:

1.php里的代码如下:
<?php
return array(
'ILOVEYOU'=>1,2,3,4
);
?>

index.php里的代码如下:
<?php
$a = array_change_key_case(include '1.php');

print_r($a);
?>

访问index.php的结果如下:
Array ( [iloveyou] => 1 [0] => 2 [1] => 3 [2] => 4 )

6、require的使用方法:这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份。常

用的函数,亦可以这个方法将它引入网页中。
include使用方法:这个函数一般是放在流程控制的处理部分中。PHP 程序网页在读到 include 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化

PHP 相关文章推荐
PHP的ASP防火墙
Oct 09 PHP
利用PHP实现与ASP Banner组件相似的类
Oct 09 PHP
php读取数据库信息的几种方法
May 24 PHP
zend api扩展的php对象的autoload工具
Apr 18 PHP
初学PHP的朋友 经常问的一些问题。不断更新
Aug 11 PHP
深入解读php中关于抽象(abstract)类和抽象方法的问题分析
Jan 03 PHP
php实现的树形结构数据存取类实例
Nov 29 PHP
php实现session自定义会话处理器的方法
Jan 27 PHP
php实现mysql数据库分表分段备份
Jun 18 PHP
PHP如何将log信息写入服务器中的log文件
Jul 29 PHP
thinkPHP框架实现的短信接口验证码功能示例
Jun 20 PHP
PHP获取访问设备信息的方法示例
Feb 20 PHP
php生成WAP页面
Oct 09 #PHP
让你同时上传 1000 个文件 (一)
Oct 09 #PHP
让你同时上传 1000 个文件 (二)
Oct 09 #PHP
一个可以删除字符串中HTML标记的PHP函数
Oct 09 #PHP
利用static实现表格的颜色隔行显示
Oct 09 #PHP
PHP 和 XML: 使用expat函数(三)
Oct 09 #PHP
PHP 和 XML: 使用expat函数(二)
Oct 09 #PHP
You might like
基于数据库的在线人数,日访问量等统计
2006/10/09 PHP
PHP flock 文件锁详细介绍
2012/12/29 PHP
解决File size limit exceeded 错误的方法
2013/06/14 PHP
通过Javascript创建一个选择文件的对话框代码
2012/06/16 Javascript
用JavaScript修改CSS属性的代码
2013/05/06 Javascript
JavaScript字符串常用类使用方法汇总
2015/04/14 Javascript
AngularJS Module方法详解
2015/12/08 Javascript
利用JS实现简单的日期选择插件
2017/01/23 Javascript
node版本管理工具n包使用教程详解
2018/11/09 Javascript
原理深度解析Vue的响应式更新比React快
2020/04/04 Javascript
javascript设计模式 ? 外观模式原理与用法实例分析
2020/04/15 Javascript
JavaScript实现原型封装轮播图
2020/12/27 Javascript
python数据结构之图的实现方法
2015/07/08 Python
python flask 多对多表查询功能
2017/06/25 Python
VSCode下好用的Python插件及配置
2018/04/06 Python
解决Django的request.POST获取不到内容的问题
2018/05/28 Python
Python实现在某个数组中查找一个值的算法示例
2018/06/27 Python
Django urls.py重构及参数传递详解
2019/07/23 Python
Django+uni-app实现数据通信中的请求跨域的示例代码
2019/10/12 Python
python实现把两个二维array叠加成三维array示例
2019/11/29 Python
python正则表达式匹配IP代码实例
2019/12/28 Python
python 双循环遍历list 变量判断代码
2020/05/04 Python
Python使用shutil模块实现文件拷贝
2020/07/31 Python
Python打印不合法的文件名
2020/07/31 Python
在 Python 中使用 MQTT的方法
2020/08/18 Python
Python3.8.2安装包及安装教程图文详解(附安装包)
2020/11/28 Python
Wojas罗马尼亚网站:波兰皮鞋品牌
2018/11/01 全球购物
速卖通欧盟:Aliexpress EU
2020/08/19 全球购物
中医药大学毕业生自荐信
2013/11/08 职场文书
餐厅经理岗位职责和岗位目标
2014/02/13 职场文书
综治宣传月活动总结
2014/04/28 职场文书
啦啦队口号大全
2014/06/16 职场文书
人力资源管理求职信
2014/08/07 职场文书
论群众路线学习笔记
2014/11/06 职场文书
2015年感恩母亲节的演讲稿
2015/03/18 职场文书
el-form每行显示两列底部按钮居中效果的实现
2022/08/05 HTML / CSS