php包括文件练习

时间:2013-08-06 01:21:40

标签: php include

如果之前执行过的其他php文件已经包含了php文件,我是否还应该编写php文件所需的包含?

例如,假设我有3个php文件:parent.php,child.php和food.php。

parent.php和child.php需要位于food.php中的函数。 parent.php首先包括food.php然后是child.php。这意味着child.php也会加载food.php。

所以对于child.php我还应该写require_once / include_once('food.php'),还是留下来?

感谢。

3 个答案:

答案 0 :(得分:0)

在您的示例中,child.php不需要包含food.php

答案 1 :(得分:0)

单独包含文件是个好主意。如果出于某种原因food.php未将parent.php包含在child.php中,则food.php中的代码将无效。

为防止这种情况发生,您可以在两个文件中加载//some code ,因此如果一个文件失败,另一个文件将顺利运行。

重命名文件会使其更清晰。

<强>的functions.php:

require_once('functions.php');
//some code

<强> file1.php:

require_once('functions.php');
//some code

<强> file2.php:

{{1}}

答案 2 :(得分:0)

理想情况下,您将根据框架甚至简单的文件结构知道文件的位置。

只是在这里和那里包含文件“万一你忘记了”是非常糟糕的编码练习。你在哪里划线?在header.php中设置元标记,但是在index.php中也是如此,以防它在header.php中不起作用?

您可以使用require_once(),它将在出错时停止(而include_once将继续执行剩余的脚本) - 例如:

  

PHP致命错误:require_once():无法打开所需的'food.php'

虽然PHP应该服从并且只包含“一次”,但它可能导致问题再次包括文件,错误/警告等,所以只需正确构建文件并在需要时将文件包含在文件中(通常都在需要它们的文件顶部)

如果我理解正确,你只需要parent.php首先包含food.php,然后是child.php,因此parent.php和child.php都可以访问food.php中的任何内容。

希望有所帮助。