我需要在我们的页面中创建带有自己的index.php文件的子文件夹。但是,当我在根目录中包含页眉和页脚文件时,该站点会中断,因为头文件正在查找当前目录中的所有CSS和JavaScript文件。
我该如何解决这个问题?
答案 0 :(得分:1)
您可以在include中使用相对路径,并..
上一个目录。
include('../functions.php');
这将包括父文件夹中的functions.php。如果它是2个文件夹深,则为../../functions.php
这是在其他文件夹中包含内容的最常见方式,实际上提供了相对但直接的路径。使用解析器include_path可以工作,但不是可移植的。
只是快速比较两种方法的执行计划:
使用include('../functions.php');
:
使用include_path,我们只列出列表中的3个路径,include('functions.php');
然后你必须希望有人不在其中一个包含的路径中放置一个functions.php ...
答案 1 :(得分:0)
对于服务器端,将根添加到include_path
设置(或者,如果您不打算在其他任何地方添加,请将include_path
替换为root),然后您将能够从任何地方引用其中的文件。
客户端,您使用<base>
标记告诉浏览器URL从哪里开始(即:相对URL最终指向的位置)。如果你要链接CSS和JS而不是包含它们,你真的只需要这个,但这是更常见的场景。 (您通常包含PHP,并链接CSS / JS。)