Include,require,include_once,require_once的区别

网络整理 - 08-19

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

<?php

include('hello.php');

echo 'include test final!';//include报错,但是会继续执行,显示:include test final!

require('hello.php');

echo 'require test final!';//require报错,停止代码的执行。

?>

include_once()和require_once()的区别在于有条件包含和无条件包含。

<?php

//t1.php

$t1 = 'hello';

?>

<?php

//t2.php

$t2 = ' php';

?>

<?php

//test.php

if(1 == 1)

{

include_once('t1.php');

}

elseif(1 == 2)

{

require_once('t2.php');

}

echo $t1 . $t2;//output:hello php

?>

include_once()和require_once()一样,应该用于在脚本执行期间同一个文件有可能被包含超过一次的情况下,想确保它只被包含一次以避免函数重定义,变量重新赋值等问题。这就是include_once()和require_once()与include() 和require()的主要区别。