关于包含语法的麻烦

时间:2014-01-15 03:28:08

标签: php

我确信这是一个非常简单的事情,但是,因为我是一个新手,我似乎没有选择。

我目前在页眉和页脚文件中使用以下代码。我意识到这是一个不好的做法,并希望找到如何编写正确的语法,以便任何目录中的所有文件只能指向一个路径。我希望我解释得对。

<?php include("includes/footer.php"); ?>        
<?php include("../includes/footer.php"); ?>  
<?php include ("../../includes/footer.php"); ?>  

如果我删除上面的一个或两个路径,我会遇到问题。我不认为我这样做是对的。除非我不确定自己,这是在php中处理这种事情的方法。

谢谢!

2 个答案:

答案 0 :(得分:2)

如果您有多个调用点,那么相对路径将无法在整个包含中可靠地工作。然后使用绝对路径,定义BASE_DIR常量。

或者,如果您的include文件夹位于Web服务器根目录下面:

include("$_SERVER[DOCUMENT_ROOT]/includes/footer.php");

答案 1 :(得分:0)

这取决于您的目录结构。

如果您有例如:

/index.php
/pages/testPage.php
/includes/footer.php

然后在index.php中你需要使用<?php include("includes/footer.php"); ?> 但在testPage.php中,您需要使用<?php include("../includes/footer.php"); ?>

“..”表示一个文件夹。如果您的目录结构与我的示例相似,那么您应该可以在每个页面上使用<?php include($_SERVER['DOCUMENT_ROOT']."/includes/footer.php"); ?>