我有一个标题,我想包含在不同目录中的许多其他php文件中。为了使所有导航工作,我尝试使用$_SERVER['DOCUMENT_ROOT'];
来获取项目的根目录。唯一的问题是“文档”根是原始请求来自的根源(并不总是项目的根目录,而是文件。我总是希望它成为顶级目录所以链接可能保持不变。我怎么能这样做?
作为一个例子,如果我在项目的根目录中它可以正常工作
$root = $_SERVER['DOCUMENT_ROOT'];
$root .= "index.php";
结果字符串是/path/to/project/dir/index.php
但是,如果我在子目录中,它不会
$root = $_SERVER['DOCUMENT_ROOT'];
$root .= "html/page.php";
结果字符串是/path/to/page.php/file/html/page.php
而我想要结果/path/to/project/dir/html/page.php
答案 0 :(得分:0)
如果您致电getcwd(),它应该为您提供路径
答案 1 :(得分:0)
实现此目的的正确方法实际上只是使用服务器的“根”。例如,我运行的是LAMP堆栈,httpd.conf文件中定义的根目录为/var/www/html
,因此当链接以/
开头时,它就是应用程序的根目录。
答案 2 :(得分:-2)
使用以下环境变量来获取根路径
$_SERVER['SERVER_NAME']
或者您可以使用获取完整路径
'http://'. $_SERVER['SERVER_NAME'].'/';
尝试回应此