Php 显示链接的绝对位置

Php 显示链接的绝对位置,php,html,directory,hyperlink,filenames,Php,Html,Directory,Hyperlink,Filenames,当我仅相对引用链接位置时,是否有任何方法可以绝对显示链接位置 也就是说,一个文件是相对引用的,如 <a href='../../files/uploaded_file.jpg'>Your Uploaded File</a> 问题是,我不想明确说明域是什么,因为脚本将用于各种不同的域,而无需编辑脚本 基本上,我想以某种方式回应您在firefox状态栏中看到的文本,当您将鼠标悬停在一个链接上时。这是google吐出的第一个内容…: 这一个甚至更短:做一个: 变量转储($\服

当我仅相对引用链接位置时,是否有任何方法可以绝对显示链接位置

也就是说,一个文件是相对引用的,如

<a href='../../files/uploaded_file.jpg'>Your Uploaded File</a>
问题是,我不想明确说明域是什么,因为脚本将用于各种不同的域,而无需编辑脚本


基本上,我想以某种方式回应您在firefox状态栏中看到的文本,当您将鼠标悬停在一个链接上时。

这是google吐出的第一个内容…:

这一个甚至更短:

做一个:

变量转储($\服务器)


您将看到哪一个可以作为域url。

如果链接是相对的,您可以使用PHP中的当前主机+路径作为前缀。您必须格式化路径以解析相关url部分,如
/../
,一个简单的循环就可以做到这一点。


<a href="<?php echo 'http://'.$_SERVER['HTTP_HOST'] . '/files/uploaded_file.jpg'; ?>">Your file</a>

假设包含示例代码的页面距离站点根目录有两个目录,例如

http://www.example.com/one/two/example-page.php
然后你可以这样做:

<a href='http://<?php echo htmlentities($_SERVER['SERVER_NAME'], ENT_QUOTES)?>/files/uploaded_file.jpg'>Your Uploaded File</a>
然后,您需要做更多的工作才能获得绝对url

<?php
$FilesystemPath = str_replace("\\", "/", realpath(dirname(__FILE__) . "/../../files/")) . "/uploaded_file.jpg";
$DocRoot = $_SERVER['DOCUMENT_ROOT'];
$Uri = str_replace($DocRoot, '', $FilesystemPath);
?>
<a href='http://<?php echo htmlentities($_SERVER['SERVER_NAME'] . $Uri, ENT_QUOTES)?>'>Your Uploaded File</a>

http: //www.example.com/content/files/uploaded_file.jpg
<?php
$FilesystemPath = str_replace("\\", "/", realpath(dirname(__FILE__) . "/../../files/")) . "/uploaded_file.jpg";
$DocRoot = $_SERVER['DOCUMENT_ROOT'];
$Uri = str_replace($DocRoot, '', $FilesystemPath);
?>
<a href='http://<?php echo htmlentities($_SERVER['SERVER_NAME'] . $Uri, ENT_QUOTES)?>'>Your Uploaded File</a>