`
king_c
  • 浏览: 225780 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

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

    博客分类:
  • php
 
阅读更多

1.引用文件方式

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

 

2.是否有条件引用

      在PHP变成中,include()与require()的功能相同,但在用法上却有一些不同,include()是有条件包含函数,而require()则是无条件包含函数。例如在下面的一个例子中,如果变量$somgthing为真,则将包含文件somefile:
if($something){
include("somefile");
}
但不管$something取何值,下面的代码将把文件somefile包含进文件里:
if($something){
require("somefile");
}
下面的这个有趣的例子充分说明了这两个函数之间的不同。
$i = 1;
while ($i < 3) {
require("somefile.$i");
$i++;
}
在这段代码中,每一次循环的时候,程序都将把同一个文件包含进去。很显然这不是程序员的初衷,从代码中我们可以看出这段代码希望在每次循环时,将不同的文件包含进来。如果要完成这个功能,必须求助函数include():
$i = 1;
while ($i < 3) {
include("somefile.$i");
$i++;
}

 

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引入文件的时候,如果碰到错误,会给出提示,并停止运行下边的代码。

分享到:
评论

相关推荐

    include和require的区别

    在PHP编程语言中,`include`和`require`都是用于导入其他PHP文件的函数,以在当前脚本中使用它们的代码、变量和函数。它们的主要目的是为了代码重用和组织,但它们之间存在一些关键差异,这些差异主要体现在错误处理...

    PHP中include与require使用方法区别详解

    在PHP变成中,include()与require()的功能相同,include(include_once) 与 require(require_once)都是把把包含的文件代码读入到指定位置来,但是二者再用法上有区别:(include()是有条件包含函数,而require()...

    PHP中include和require的区别实例分析

    这两个函数与include和require功能相同,唯一的区别是它们会检查指定的文件是否已经包含过了,如果是,则不会重复包含。在上面的例子中,如果使用了require_once或include_once,并且提供的路径是正确的,那么...

    php include和require的区别深入解析

    include() 产生一个警告而require() 则导致一个致命错误。换句话说,如果你想在遇到丢失文件时停止处理页面就用require()。include() 就不是这样,脚本会继续运行。同时也要确认设置了合适的include_path。当一个...

    PHP中include/require/include_once/require_once使用心得

    相信大家在使用PHP时经常看到include a.php、include_once a.php、require a.php或者require_once a.php类似这样的写法吧? 我们一起来学习和总结一下这几个语句的作用及特点! include 使用方法: include "test...

    php include,include_once,require,require_once

    现在来说include和require的区别: require()函数包含进来的内容被当成当前文件的一个组成部分,所以当包含进来的文件有语法错误或者文件不存在的时候,那当前文件的PHP脚本都不再执行. include()函数相当于指定这个...

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

    php的require()与include(),在性能方面并无大的不同。 仅有的一些不同在于: include()执行时文件每次都要进行读取和评估; require()执行时文件只处理一次(实际上,文件内容替换了require()语句)。 即如果有包含...

    PHP包含文件函数include、include_once、require、require_once区别总结

    include() 、require()语句包含并运行指定文件。这两结构在包含文件上完全一样,唯一的区别是对于错误的处理。require()语句在遇到包含文件不存在,或是出错的时候,就停止即行,并报错。include()则继续即行。

    php使用include 和require引入文件的区别

    最近有小伙伴,提问了有关于require_once的有关问题,对于程序中遇到的问题,无聊难度大小,只要bug存在就还值得我们去探索,去解决。针对这个问题,我把include和require的详细用法进行归纳。(结合查阅资料和自己...

    深入理解require与require_once与include以及include_once的区别

    在PHP编程中,`require`、`require_once`、`include`和`include_once`都是用于引入其他PHP文件的关键函数,它们有助于实现代码重用和模块化编程。这些函数之间的主要区别在于它们处理重复导入的方式。 1. `require...

    PHP常用函数及方法详解: date()函数、include:require 语句.md

    通过以上的介绍,我们对PHP中的`date()`函数以及`include`和`require`语句有了更深入的理解。这些知识点对于进行PHP开发非常重要,掌握它们可以帮助开发者更好地处理日期时间相关的逻辑以及有效地组织代码结构。

    简单谈谈PHP中的include、include_once、require以及require_once语句

    在PHP编程语言中,`include`、`include_once`、`require`以及`require_once`是四个非常重要的语句,它们用于将一个或多个文件的内容插入到当前正在执行的脚本中。这些语句主要用于组织代码,重用功能或者引入配置...

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

    在PHP编程语言中,`include()` 和 `require()` 都是用来导入其他PHP文件的函数,以便在当前脚本中使用其定义的变量、函数或类。它们的主要目的是为了实现代码的模块化,使得大型项目更易于管理和维护。尽管两者在...

    PHP中require和include路径问题详解

    在PHP编程中,`require`和`include`都是用于在脚本中引入其他文件的关键字,它们的作用相似,但略有不同。主要的区别在于处理错误的方式:`require`会在找不到文件时抛出致命错误并停止脚本执行,而`include`只会...

Global site tag (gtag.js) - Google Analytics