PHP获取Virtualhost上包含文件的目录

时间:2014-12-31 09:53:08

标签: php url include server

我想在我的apache虚拟服务器上使用__DIR__,但它使用系统地址(C:\xampp\htdocs\virtual\file.php),有没有办法使用服务器的地址(/file.phphttp://virtual/file.php )?

感谢您的帮助

修改

感谢您的回答,但我想在其他地方加入file.php,因此我无法使用$_SERVER['REQUEST_URI']。还有另一种方式吗?

4 个答案:

答案 0 :(得分:1)

__DIR__将为您提供其所使用文件的文件夹的文件系统路径。根据您的HTTP服务器配置,文件系统位置和URL可以完全不相关。

如果您想要客户提供有关请求地址的信息,可以使用$_SERVER['REQUEST_URI']

答案 1 :(得分:1)

你必须使用  $_SERVER['REQUEST_URI'] 不  __DIR__

答案 2 :(得分:1)

点击此链接enter link description here

__ DIR __ 该文件的目录。如果在include中使用,则返回包含文件的目录。这相当于 dirname(__ FILE __)。除非它是根目录,否则此目录名称没有尾部斜杠。

所以你必须使用 dirname(__ FILE __)

答案 3 :(得分:0)

__DIR__为您提供完整的绝对文件系统路径。你应该用这个:

dirname($_SERVER['SCRIPT_NAME']);