PHP中的require_once函数,PHP函数include,include_once, require和require_once的区别

include 语句包含并运行指定文件

include_once 语句在脚本执行期间包含并运行指定文件。此行为和 include 语句类似,唯一区别是如果该文件中已经被包含过,则不会再次包含。如同此语句名字暗示的那样,只会包含一次。

require 和 include 几乎完全一样,除了处理失败的方式不同之外。require 在出错时产生 E_COMPILE_ERROR 级别的错误。换句话说将导致脚本中止而 include 只产生警告(E_WARNING),脚本会继续运行。

require_once 语句和 require 语句完全相同,唯一区别是 PHP 会检查该文件是否已经被包含过,如果是则不会再次包含。

以上是对这四个函数的介绍 ,下面来验证一下。首先看看

include与require的区别

include与require除了在处理引入文件的方式不同外,最大的区别就是:include在引入不存文件时产生一个警告且脚本还会继续执行,而require则会导致一个致命性错误且脚本停止执行

include 't.php';

echo PHP_EOL.'------include----'.PHP_EOL;

如果t.php文件不存在,echo语句是可以被执行的。代码执行效果如下:

33ad0e16e7aa0cd7b4ee1a03176a7a44.png使用include引入文件,出现警告信息并继续执行输出内容

require 't.php';

echo PHP_EOL.'------require----'.PHP_EOL;

如果t.php文件不存在,echo语句是不被执行的。代码执行效果如下:

6318e685533dd071d5909ca846822565.png使用require引入文件,只看到报错信息,并没有输出

include与include_once的区别(require与require_once的区别)

include_once (require_once)语句在脚本执行期间包含并运行指定文件。此行为和 include (require)语句类似,区别是如果该文件中的代码已经被包含了,则不会再次包含,只会包含一次。include_once(require_once)需要查询一遍已加载的文件列表, 确认是否存在, 然后再加载。

// 这种情况t.php被引入两次

require 't.php';

require 't.php';

echo PHP_EOL.$t.PHP_EOL;

e6805fe520b97bc74a50e3b2899d3a37.png

// 这种情况t.php被引入一次

require 't.php';

require_once 't.php';

echo PHP_EOL.$t.PHP_EOL;

f7162853a8c05233ae773bfbd6c7c502.png

include_once和require_once会有性能上的下降,因为他需要判断之前是否包含过。一般情况下,也不太需要去考虑,除非这已经影响到你程序的性能了。

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

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

发表评论

评论已关闭。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值