include,require,include_once,require_once区别和性能对比

include()与require()语句包含并运行指定文件。

通过 include 或 require 语句,可以将 PHP 文件的内容插入另一个 PHP 文件(在服务器执行它之前)。

include 和 require 语句是相同的,除了错误处理方面:

  • require 会生成致命错误(E_COMPILE_ERROR)并停止脚本
  • include 只生成警告(E_WARNING),并且脚本会继续

换句话说,如果想在遇到丢失文件或遇到错误时停止处理页面就用 require()。如果想在遇到错误时继续处理页面就用 include()。

注意在 PHP 4.3.5 之前,包含文件中的语法错误不会导致程序停止,但从此版本之后会。

include_once()
include_once() 语句在脚本执行期间包含并运行指定文件。此行为和 include() 语句类似,唯一区别是include_once()会先判断一下这个文件在之前是否已经被包含过,如已经包含,则忽略本次包含。
include_once() 应该用于嵌套包含的情况下,想确保它只被包含一次以避免函数重定义,变量重新赋值等问题。

<?php
var_dump(include_once ‘fakefile.ext‘); // bool(false)
var_dump(include_once ‘fakefile.ext‘); // bool(true)
?>

require_once()
require_once() 语句在脚本执行期间包含并运行指定文件。此行为和 require() 语句类似,唯一区别是require_once()会先判断一下这个文件在之前是否已经被包含过,如已经包含,则忽略本次包含。

require_once() 应该用于嵌套包含的情况下,想确保它只被包含一次以避免函数重定义,变量重新赋值等问题。

需要注意的问题

1.路径问题

特别是嵌套包含的时候,一定得注意包含文件的路径。

比如 A文件包含了B文件,B文件包含了C文件,A,B,C文件都不在同一个文件夹下,这个时候往往很容易出错误。

解决方案:可以使用 dirname(__FILE__) 语句,这句的意思是获得当前脚本的绝对路径。如:require_once(dirname(__FILE__).‘/config.php‘);

2.效率问题

include_once(),require_once(),与include(),require()比较,效率要低一些,因为他们至少得先判断一下这个文件是否已包含。这一问题在PHP5版本有很大改进,不过效率还是有差别。

时间: 2024-10-07 05:51:29

include,require,include_once,require_once区别和性能对比的相关文章

php的include(),require(),include_once(),require_once()

include(),require(),include_once(),require_once()作用都是包含并运行指定文件,但是使用场景又有很大区别. 1.include()和require()的区别: include()引入文件时,如果遇到错误会提示错误并继续执行:require()引入文件遇到错误时也提示错误但会终止程序的运行. require()语句一般放在PHP脚本页面的最前面,php在执行前,就先读入require()引入的文件,文件的内容会变成此脚本的一部分,一旦出现错误,则立即退

php学习笔记6--php中的文件包含 include,require,include_once,require_once

php中的文件包含 include,require,include_once,require_once 文件包含:是指将一个文件的内容包含进另外一个文件,有利于代码的复用等.php中文件包含指令有4个,分别为:include,include_once,require,require_once其中:include和require:使用一次便包含一次文件;而include_once和require_once则是:不管在一个脚本中包含另外一个脚本多少次,都只加载一次,不会重复,这样可以避免因一个文件的

关于require,require_once,include和include_once的区别

一.定义 require,require_once,include,include_once都属于PHP的关键字,也就是说它们实际都是PHP的语句,而不是函数,类似于print,echo一样,也是PHP种的输出语句,而不是函数.但在更多的时候,大家都常称作函数. 二.用法 require 'test.php',require_once 'test.php',或者require('test.php'),require_once('test.php')这样的写法都是可以的,include也是如此.它

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

一.使用语法和简介 1.include() 语法:include(/path/to/filename)include()语句将在其被调用的位置处包含一个文件.包含一个文件与在该语句所在位置复制制定文件的数据具有相同内容的效果.使用include()时可以忽略括号. 可以根据条件来执行include()语句.在条件语句中使用include()有个怪现象,它必须包围在语句块大括号中,或者用其他语句包围符括起来. 2.include_once() 语法:include_once(filename) i

php require、require_once和include、include_once的区别

一.引入php文件路径的方法require '文件路径'; require ('文件路径');require_once '文件路径'; require_once ('文件路径'); include 同 requireinclude_once 同 require_once   二.include和require的区别 相同点:都是引入文件 不同点:require遇到错误终止程序:include遇到错误继续执行. 推荐使用require_once方法引入文件

ArrayList与LinkedList的性能对比

ArrayList与LinkedList都是继承至Collection对象,内部实现导致性能方面存在一定的区别 插入性能对比 private final static int COUNT = 10000000; private static long insertObject(List<Object> list) { Object obj = new Object(); long startTime = System.currentTimeMillis(); for (int i = 0; i

include,include_once,require,require_once的区别

1.include,require在其被调用的位置处包含一个文件. 2.include_once,require_once函数的作用与include相同,不过它会首先验证是否已包含该文件.如果已经包含,则不再执行include_once.其他同include一样. 3.require与include最主要的区别,a.require出错时,脚本将停止运行,而include出错的情况下,脚本将继续执行.b.无论require的位置如何,制定文件都将包含到出现require的脚本中.例如,即使requ

PHP include()和require()方法的区别

本文总结了PHP的include()和require()两种包含外部文件的方法的不同之处.基本上就是,加载失败的处理方法,性能,以及使用弹性方面的不同. PHP的include()和require()是两种包含外部文件的方法,对于这两种方法有什么区别,很多初学者可能不是很明白.下面总结一下PHP include()和require()的区别: 1:加载失败的处理方式不同: include()会产生一个警告,而require()则导致一个致命的错误(出现错误,脚本停止执行) require() :

辛星与您彻底分析PHP中的include和require等的区别

首先说一下require吧,我们知道如果它引入的文件不存在,将会导致程序无法继续执行,因此它通常放在程序的最前面,通常是一些特别重要的部分,比如连接数据库库,比如加载配置文件,比如引用核心函数库等等. 然后说一下include把,它引入成功与否并不重要,因此它和html的特点很接近,可以用于程序的开头,当然很多时候我们是需要引用的时候才include进来,这样,它的位置也就更加随意一些,可以放在中间. 还有一个include_once,它的开销比include 大得多,为什么呢,因为它会检测该文