Rumah  >  Artikel  >  pembangunan bahagian belakang  >  PHP中include和require区别是什么?和Include_once的区别?

PHP中include和require区别是什么?和Include_once的区别?

慕斯
慕斯asal
2021-06-15 15:00:511964semak imbas

上篇文章给大家介绍了《PHP中文件常用系统函数有哪些?文件的加载原理是?》,本文继续给大家介绍PHP中include和require区别是什么?和Include_once的区别?有一定的参考价值,有需要的朋友可以参考一下,希望对大家有所帮助。

PHP中include和require区别是什么?和Include_once的区别?

●Include和require区别。

首先先了解Include和include_once 的区别:

Include系统会碰到一次,执行一次;如果对统-一个文件进行多次加载,那么系统会执行多次;

Include_once:

系统碰到多次,也只会执行一次

具体我们以代码为例:

建立两个文件,分别命名为include1和include2;代码如下:

include1:

<?php
//被包含的文件
//定义数据
$a = 1;
define(&#39;PI&#39;,3.14);
?>

include2:

<?php
//包含文件:使用数据
//包含文件
include &#39;include1.php&#39;; //包含当前文件include2. php所在文件夹下的include1. php
echo $a,PI;
//再次加重
include &#39;include1.php&#39;;
?>

代码演示结果如下:

2.JPG

3.JPG

当我们在原有的代码基础上,把include 'include1.php';注释掉,然后我们加上

include_once 'include1.php';运行结果会显示不在出现notice,不在报错,但是我们需要注意的是同样的常量可能会存在重复定义,也就是,如果包含成功了,也就重复定义了。此时我们第二次的运行结果没有出现错误,是因为系统发现我们在include1中已经定义过一次了,我们可以知道系统会自动查询,因此我们也知道Include_once:

系统碰到多次,也只会执行一次

,这是Include和include_once 的最明显的区别

Require和include的区别:本质都是包含文件,唯- -的区别在于包含不到文件的时候,报错的形式不一样。

具体我们以代码为例:

我们先随便定义一个文件,结果显示两个错误,首先说系统无法打开我们定义的文件,其次,系统找不到该文件,但是系统报的是警告,也就是不影响我们执行,当我们在代码下方正常放代码,我们会发现会正常解析,

<?php
//require和include的区别
//include包含文件
include &#39;b.php&#39;;
?>

代码演示结果如下:

4.JPG

<?php
//require和include的区别
//include包含文件
include &#39;a.php&#39;;
echo &#39;我喜欢你&#39;;
?>

代码演示结果如下:

5.JPG

以上可得知,虽然我们上述会报错,但是才不影响我们执行结果;

Include的错误级别比较轻:不会阻止代码执行。

Require要求较高:如果包含出错代码不再执行(require 后面的代码)

具体我们以代码为例:

<?php
//require和include的区别
//include包含文件
//include &#39;a.php&#39;;
//requre 包含文件
require &#39;b.php&#39;;
echo &#39;我喜欢你&#39;;
?>

代码演示结果如下:

6.JPG

和上述我们运行的代码有一点区别就是,require会报出fatal error:找不到对应的文件,并且不会再执行我们输入的代码

推荐学习:《PHP视频教程

Atas ialah kandungan terperinci PHP中include和require区别是什么?和Include_once的区别?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn