include,include_once,require或require_once?

时间:2010-08-23 09:16:41

标签: php include

我有PHP文件,我已经定义了服务器访问变量以及mysql_connectmysql_select_db,因为这个函数经常在后端的每个页面中使用,而我正在使用{{ 1}}这对我现在完全有效,你会建议哪种方法或功能,如果我使用include()或者使用它是否安全,我想知道是否有任何缺陷?

编辑:请记住,我也会使用include()变量。

8 个答案:

答案 0 :(得分:42)

两者之间的唯一区别是require及其姐妹require_once如果找不到文件会抛出致命错误,而includeinclude_once只会显示警告并继续加载页面的其余部分。如果您不希望PHP在没有数据库信息(我假设)的情况下尝试加载页面的其余部分,请使用require_once。您不需要多次包含该文件,因此无需使用常规require函数。

答案 1 :(得分:23)

功能性工作: 所有功能执行类似的工作。执行代码时,所有函数都将包含并评估特定文件。

功能差异:

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/

答案 2 :(得分:2)

对于数据库连接变量,最好使用require_once()函数。 如果连接因任何原因失败,您可以显示失败消息。

答案 3 :(得分:1)

如果您的页面在没有数据库连接的情况下无法正常工作,那么require_once将是唯一正确的选项(因为您不想加载这些设置两次,加载一次就足够了)。即使设置文件不可用,Include也会尝试加载您的页面。

答案 4 :(得分:0)

包含 include()语句包含并评估指定的文件。

包含一次 include_once()语句在执行脚本期间包含并评估指定的文件。这是一种类似于include()语句的行为,唯一的区别是如果已经包含文件中的代码,则不会再次包含它。顾名思义,它只包含一次。

需要 require()和include()在各方面都是相同的,除了它们如何处理失败。它们都产生警告,但require()导致致命错误。换句话说,如果您希望丢失文件来暂停页面处理,请不要犹豫使用require()。

需要一次 require_once()语句在执行脚本期间包含并评估指定的文件。这是一种类似于require()语句的行为,唯一的区别是如果已经包含了文件中的代码,则不会再次包含它。

答案 5 :(得分:0)

<?php

include('db.php');   

echo "<br>"."Included"."<br>";

include_once('db.php');

echo "<br>"."Again included"."<br>";

?>

在上面的代码中,我在顶部使用include语句包含了一个文件, 该文件将包含在内。

接下来,我使用include_once来包含相同的文件,但是由于该文件已经被包含 上面的内容,这里不再包含。

输出:

Connected             -----This is from db.php File
Included

Again included

==========================

include_once('db.php');

echo "<br>"."Again included"."<br>";

include('db.php');

echo "<br>"."Included"."<br>";

?>

在上面的代码中,我在顶部使用了include_once,因此包含了该文件 但是在接下来的代码中,我再次将include_once用于同一文件,然后 再次将文件包含在内,输出将为

输出:

Again included
Connected
Included
Connected

答案 6 :(得分:-1)

require()对你更好。因为在脚本编译之前有require文件包含。 include()在动态中使用包括。

答案 7 :(得分:-1)

如果您在页面上多次包含include_once(),则应该使用它。