两者之间唯一的区别就是require
及其姐妹函数require_once
在文件未找到时将抛出致命错误,而include
和include_once
只会显示警告并继续加载页面剩余部分。如果您不希望PHP尝试在没有数据库信息的情况下加载页面的其余部分(我假设不希望这样),那么请使用require_once
。您无需多次包含该文件,因此无需使用常规的require
函数。
功能性工作:所有函数都执行类似的工作。在执行代码时,所有函数都会包含并评估特定文件。
功能性区别:
include vs include_once:include()和include_once()之间只有一个区别。如果代码已经包含了一个文件,那么如果我们使用include_once(),它将不会再次包含该文件。这意味着include_once()一次只包含一个文件。
include vs require:如果include()无法在指定的位置找到文件,则会抛出警告,但它不会停止脚本执行。对于相同的情况,require()将抛出致命错误并停止脚本执行。
require vs require_once:require()和require_once()之间只有一个区别。如果代码已经包含了一个文件,那么如果我们使用require_once(),它将不会再次包含该文件。这意味着require_once()一次只包含一个文件。
要获取详细的知识和示例,请查看这些精彩文章:
(1) http://www.readmyviews.com/include-vs-include-once/
(2) http://www.readmyviews.com/include-vs-require/
对于数据库连接变量,最好使用require_once()函数。如果连接失败,您可以显示失败消息。
<?php
include('db.php');
echo "<br>"."Included"."<br>";
include_once('db.php');
echo "<br>"."Again included"."<br>";
?>
Connected -----This is from db.php File
Included
Again included
<?php
include_once('db.php');
echo "<br>"."Again included"."<br>";
include('db.php');
echo "<br>"."Included"."<br>";
?>
在上面的代码中,我使用了include_once
,所以文件已被包含。
但在下一个代码中,我又对同一文件使用了include_once
,那么该文件将再次被包含,输出结果为:
输出:
Connected
Again included
Connected
Included
Include include()语句包含并评估指定的文件。
Include Once include_once()语句在脚本执行期间包含并评估指定的文件。这与include()语句类似,唯一的区别是如果已经包含了文件中的代码,则不会再次包含。正如其名称所示,它只会被包含一次。
Require require()和include()在处理失败方面完全相同。它们都会产生一个警告,但require()会导致致命错误。换句话说,如果您希望缺少文件停止页面处理,请毫不犹豫地使用require()。
Require Once require_once()语句在脚本执行期间包含并评估指定的文件。这与require()语句类似,唯一的区别是如果已经包含了文件中的代码,则不会再次包含。
使用require()更好。因为在脚本编译之前,文件已经被包含了。而include()则用于动态包含。
include
没有任何意义。 - Sasha Chedygov