我想在我的apache虚拟服务器上使用__DIR__
,但它使用系统地址(C:\xampp\htdocs\virtual\file.php
),有没有办法使用服务器的地址(/file.php
或http://virtual/file.php
)?
感谢您的帮助
修改
感谢您的回答,但我想在其他地方加入file.php
,因此我无法使用$_SERVER['REQUEST_URI']
。还有另一种方式吗?
答案 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']);