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

魅力男人在

魅力男人在

2016-02-19 08:57

图老师小编精心整理的php 中include()与require()的对比希望大家喜欢,觉得好的亲们记得收藏起来哦!您的支持就是小编更新的动力~

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 的文件时,才将它读进来。这种方式,可以把程序执行时的流程简单化

(本文来源于图老师网站,更多请访问https://m.tulaoshi.com/webkaifa/)
展开更多 50%)
分享

猜你喜欢

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

Web开发
php 中include()与require()的对比

include()与require()的对比

PHP
include()与require()的对比

s8lol主宰符文怎么配

英雄联盟 网络游戏
s8lol主宰符文怎么配

ASPX中的用户控件与ASP中的INCLUDE方法对比

Web开发
ASPX中的用户控件与ASP中的INCLUDE方法对比

JSP下动态INCLUDE与静态INCLUDE的区别分析

Web开发
JSP下动态INCLUDE与静态INCLUDE的区别分析

lol偷钱流符文搭配推荐

英雄联盟 网络游戏
lol偷钱流符文搭配推荐

PHP5.2.0中allow_url_include的应用和解释

PHP
PHP5.2.0中allow_url_include的应用和解释

JSP中include指令和include行为的区别

Web开发
JSP中include指令和include行为的区别

lolAD刺客新符文搭配推荐

英雄联盟
lolAD刺客新符文搭配推荐

浅析java中print和println的区别

浅析java中print和println的区别

JavaScript中的Document文档对象

JavaScript中的Document文档对象
下拉加载更多内容 ↓