根路径不适用于 php 包含
/ 在链接的开头,以访问根文件夹在php中不起作用。
例如“/example/example.php”
解决方案是什么?
/ 在链接的开头,以访问根文件夹在php中不起作用。
例如“/example/example.php”
解决方案是什么?
我假设根文件夹是指您的Web文档根目录,而不是文件系统根目录。
为此,您可以
include('example/example.php')
include($_SERVER['DOCUMENT_ROOT'].'/example/example.php')
我也有这个问题。Paul Dixon的答案是正确的,但也许这将有助于你理解为什么:
这里的问题是PHP是一种服务器端语言。纯HTML文档可以根据您在服务器上设置的根URL访问文件(即,从您所在的任何子目录访问图像,您将使用从顶部目录向下访问),PHP实际上在您使用时访问服务器根目录/images/example.jpg
include (/images/example.jpg)
您设置的站点结构实际上位于 Apache 服务器的文件系统中。我的站点根目录看起来像这样,从服务器根目录开始,然后向下发展:
/home2/siteuserftp/public_html/test/
“测试”表示您的网站根目录
因此,要回答您的问题,为什么您的PHP包含没有得到您想要的结果(它完全按照应有的方式工作),是因为您要求PHP代码尝试在服务器根目录下找到您的文件,而它实际上位于您网站的HTML根目录中,看起来就像上面一样。
您的文件将基于“test/”的站点根目录,如下所示:
/home2/siteuserftp/public_html/test/about/index.php
保罗·迪克森给出的答案是:
include($_SERVER['DOCUMENT_ROOT'].'/example/example.php')
正是什么将解决你的问题(不要担心试图找到文档根来替换“DOCUMENT_ROOT”,PHP会为你做。只要确保你有“DOCUMENT_ROOT”字面上)
编辑:
DOCUMENT_ROOT和其他 PHP SERVER 变量的更多信息可以在这里找到