PHP包含问题

时间:2014-03-03 17:11:58

标签: php html

我的服务器上有一个名为“layout”的文件夹,它包含两个文件:top.html和bottom.html。我正在尝试提供一个PHP包含脚本,以便我可以将它放在任何页面的顶部和底部,并有一个单独的位置来编辑我的布局。我已经尝试过的事情:

代码:

<?php include '/layout/bottom/html' ?>
<?php include './layout/bottom/html' ?>
<?php include '../layout/bottom/html' ?>
<?php include '.../layout/bottom/html' ?>
<?php $path = $_SERVER['DOCUMENT_ROOT']; $path .= "/layout/top.html"; include($path); ?>

错误:

  

C:--- serverpath --- \ www \ index.php第25行没有这样的文件或目录

真的很感激任何帮助。

1 个答案:

答案 0 :(得分:4)

PHP包含来自您来自的文件。

因此,如果您加载folder/script.php

script.php你做:

include "layout/top.html";

它将寻找:folder/layout/top.html

如果您包含以下文件:

include dirname(__FILE__) . "/../layout/top.html";

它会查找:folder/../layout/top.html,其解析为:layout/top.html

如果你有另一个脚本:folder/folder2/script2.php,请包括:

include dirname(__FILE__) . "/../../layout/top.html";

从PHP5.3开始,您应该使用__DIR__代替dirname(__FILE__)