php中include()和require()的区别

1.引用文件方式

对 include()来说,在include()执行时文件每次都要进行读取和评估;而对于require()来说,文件只处理一次(实际上,文件内容替换 了require()语句。这就意味着如果有包含这些指令之一的代码和可能执行多次的代码,则使用require()效率比较高。另一方面,如果每次执行代码时读取不同的文件,或者有通过一组文件叠代的循环,就使用include(),因为可以给想要包括的文件名设置一个变量。

2.是否有条件引用

在PHP变成中,include()与require()的功能相同,但在用法上却有一些不同,include()是有条件包含函数,而require()则是无条件包含函数。例如在下面的一个例子中,如果变量$somgthing为真,则将包含文件somefile:

1 if($something){ 2 include("somefile"); 3 }

但不管$something取何值,下面的代码将把文件somefile包含进文件里:

1 if($something){ 2 require("somefile"); 3 }

下面的这个有趣的例子充分说明了这两个函数之间的不同。

1 $i = 1; 2 while ($i < 3) { 3 require("somefile.$i"); 4 $i++; 5 }

在这段代码中,每一次循环的时候,程序都将把同一个文件包含进去。很显然这不是程序员的初衷,从代码中我们可以看出这段代码希望在每次循环时,将不同的文件包含进来。如果要完成这个功能,必须求助函数include():

1 $i = 1; 2 while ($i < 3) { 3 include("somefile.$i"); 4 $i++; 5 }

3.报错

用例子来说话,写两个php文件,名字为test1.php  和test2.php,注意相同的目录中,不要存在一个名字是test999.php的文件。

test.php <?PHP include (”test999.php”); echo “abc”; ?> test2.php <?PHP require(”test999.php”) echo “abc”; ?>

浏览第一个文件,因为没有找到test999.php文件,我们看到了报错信息,同时,报错信息的下边显示了abc,你看到的可能是类似下边的情况:
Warning: include(test1aaa.php) [function.include]: failed to open stream: No such file or directory in D:\WebSite\test.php on line 2

Warning: include() [function.include]: Failed opening ‘test1aaa.php’ for inclusion (include_path=’.;C:\php5\pear’) in D:\WebSite\test.php on line 2
abc

浏览第二个文件,因为没有找到test999.php文件,我们看到了报错信息,但是,报错信息的下边没有显示abc,你看到的可能是类似下边的情况:
Warning: require(test1aaa.php) [function.require]: failed to open stream: No such file or directory in D:\WebSite\test.php on line 2

Fatal error: require() [function.require]: Failed opening required ‘test1aaa.php’ (include_path=’.;C:\php5\pear’) in D:\WebSite\test.php on line 2

现在就能很清楚的知道include和require的区别:include引入文件的时候,如果碰到错误,会给出提示,并继续运行下边的代码,require引入文件的时候,如果碰到错误,会给出提示,并停止运行下边的代码。

原文地址:https://www.cnblogs.com/liyuspace/p/8280853.html

时间: 2024-10-23 20:29:47

php中include()和require()的区别的相关文章

PHP中include和require的区别详解

1.概要  require()语句的性能与include()相类似,都是包括并运行指定文件.不同之处在于:对include()语句来说,在执行文件时每次都要进行读取和评估:而对于require()来说,文件只处理一次(实际上,文件内容替换require()语句).这就意味着如果可能执行多次的代码,则使用require()效率比较高.另外一方面,如果每次执行代码时是读取不同的文件,或者有通过一组文件迭代的循环,就使用include()语句. require的使用方法如:require("myfil

php 中 include 与 require 的区别

以下内容转自:https://blog.csdn.net/hsd2012/article/details/51089785 网上太多关于php中include与require区别.其实说的都是经不起验证的.随意找了一个截图如下: 还信誓旦旦的解释:include()是有条件包含函数,而require()则是无条件包含函数. 但是这是很久之前的事了,现在的php,require与include确实有区别,笔者测试的是5.3以上版本测试结果如下: 发现这两种结构除了在性能和在如何处理包含失败之外,其

PHP 中 include 和 require 的区别详解

前言 在做程序设计的时候避免不了要去引用外部文件,在 PHP 中引入文件的方式有很多种,这里详细说一下 include :require :include_once:require_once. require () 语句的性能与 include () 相类似,都是包括并运行指定文件.除了处理失败的方式不同之外.require在出错时产生 E_COMPILE_ERROR 级别的错误,终止脚本运行:而 include 只产生警告(E_WARNING),脚本会继续运行. 1.include 和 req

2016/3/27 PHP中include和require的区别详解

1.概要 require()语句的性能与include()相类似,都是包括并运行指定文件.不同之处在于:对include()语句来说,在执行文件时每次都要进行读取和评估:而对于require()来说,文件只处理一次(实际上,文件内容替换require()语句).这就意味着如果可能执行多次的代码,则使用require()效率比较高.另外一方面,如果每次执行代码时是读取不同的文件,或者有通过一组文件迭代的循环,就使用include()语句. require的使用方法如:require("myfile

PHP 中 include和require的区别

son.php文件 include.php 引用son.php文件 如果son.php文件存在(include和require应用的文件如果存在则效果相同,但当文件不存在时效果会有差异) 则: 如果include( son1.php)文件不存在则 如果require(son1.php)文件不存在 则:

PHP中include()与require()的区别

require 的使用方法如 require("MyRequireFile.php"); .这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份.常用的函数,亦可以这个方法将它引入网页中. include 使用方法如 include("MyIncludeFile.php"); .这个函数一般是放在流程控制的处理部分中.PHP 程序网页在读到 include 的文件时,才将它读进

PHP中include()与require()的区别说明

require 的使用方法如 require("MyRequireFile.php"); .这个函数通常放在 PHP 程序的最前面,PHP 程序在执行前,就会先读入 require 所指定引入的文件,使它变成 PHP 程序网页的一部份.常用的函数,亦可以这个方法将它引入网页中. include 使用方法如 include("MyIncludeFile.php"); .这个函数一般是放在流程控制的处理部分中.PHP 程序网页在读到 include 的文件时,才将它读进

PHP 中include和require的区别

PHP中引用文件的方法有两种:require和include 他们的用途是完全一样的. require:require("########");这个函数一般放在PHP文件的最前面,程序在执行前就会先导入要引用的文件. include:include("############");这个函数一般放在程序的流程控制里边.只有程序在执行碰到才会引用.可以简化程序的执行流程. 最根本的区别在于遇到错误的处理方式还有require没有返回值而include有返回值. requ

php中include和require的区别

require的使用方法, 如:require("myfile.php"),require语句通常放在PHP脚本程序的最前面执行. PHP程序在执行前,就会先读入require()语句所引入的文件,使它变成PHP脚本文件的一部分. include使用方法和require一样, 如:include("myfile.php"),而include语句一般是放在流程控制的处理区段中. PHP脚本文件在读到include()语句时,才将它包含的文件读取进来. 这种方式可以把程