PHP包含问题

PHP包含问题,php,html,Php,Html,我的服务器上有一个名为“layout”的文件夹,它包含两个文档:top.html和bottom.html。我正试图想出一个PHP包含脚本,这样我就可以把它放在任何页面的顶部和底部,并有一个地方编辑我的布局。我已经尝试过的事情: 代码: <?php include '/layout/bottom/html' ?> <?php include './layout/bottom/html' ?> <?php include '../layout/bottom/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); ?>

错误:

<?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); ?>
第25行的C:--serverpath---\www\index.php中没有这样的文件或目录


任何帮助都将不胜感激。

PHP包含与您所包含的文件相对应

因此,如果加载
文件夹/script.php

script.php
中,您可以:

include "layout/top.html";
它将查找:
文件夹/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开始,您应该使用
\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu>而不是
目录名(\uuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuuu。我们也喜欢错误消息。我很抱歉,我想这会破坏不提问的目的。lol。我的问题是,有没有办法制作一个包含脚本,无论文件的位置如何都能工作?仅供参考,您可以删除每行上的所有开始和结束标记。由于文件中没有HTML,您只需要在文件的开头使用一条open PHP语句,在文件的结尾使用一条closing PHP语句。我收到的错误消息表明它只在自己的目录中查找,即:在第25行的C:\--serverpath---\www\index.PHP中没有这样的文件或目录,
dirname(\uu file\uu)有什么原因吗
而不是
\uuuuu DIR\uuuuuu
?+1,啊,我一直认为人们使用的是最新版本,你的答案是5.4,但根据-它是在5.3中添加的。(这样你就可以编辑你的答案了)。太棒了,谢谢。我想我的一台服务器仍在运行PHP5.2(实际上我今天遇到了这个问题)。