我需要通过PHP返回文件的父目录的完整绝对路径,其中应包括协议,域地址和文件路径。目的可以是自动生成链接,以便可以将其附加到社交网络共享者链接,而不管站点的域迁移。
$_SERVER["HTTP_HOST"]
将获得域名,$_SERVER["PHP_SELF"]
将使用它获取路径以及php文件。 realpath()
将从服务器文档根目录再次获得完整路径,dirname()
将获得没有文件本身的路径。所以我能想到的最好的是:
$_SERVER["HTTP_HOST"] . dirname($_SERVER["PHP_SELF"])
有什么更好或更短的?而且,我仍然需要一个协议。我只提出$_SERVER['REQUEST_SCHEME']
,我认为在其他问题上讨论的不可靠。
答案 0 :(得分:2)
这个怎么样?涵盖https和您的路径(没有文件名)
$url = "http".(($_SERVER["HTTPS"] == "on") ? "s" : "")."://".$_SERVER['HTTP_HOST'].dirname($_SERVER['REQUEST_URI'])."/";