如何抓住用PHP文件的相对路径

问题描述 投票:0回答:2

我试图抓住相对路径的文件,以创建一个共享链接。从web服务器上的我的httpdocs文件夹,我的文件是在这里:

jack/single/uploads/folder1/image.jpg

该变种$dir . '/' . $file给我这样的输出:

uploads/folder1/image.jpg

realpath($dir . '/' . $file给了我这样的输出:

/home/vhosts/example.com/subdomains/develop3/httpdocs/jack/single/uploads/folder1/image.jpg

我想要实现的是这样的输出:

`http://develop3.example.com/jack/single/uploads/folder1/image.jpg`

我怎样才能做到这一点,这样我可以创建一个共享的链接?

php path relative-path
2个回答
2
投票

你可以使用preg_replacerealpath的输出来取代一切与你的网站的网址,httpdocs

echo preg_replace('#^' . preg_quote($_SERVER['DOCUMENT_ROOT']) . '[\\\\/]#', "{$_SERVER['HTTP_HOST']}/", realpath('test6.php')) . "\n";

0
投票

您可以使用$ _ SERVER [“HTTP_HOST”]让你的网站的名称:

function get_link($to_file){
    return "https://".$_SERVER['HTTP_HOST']."/jack/single/".$to_file;
}

echo get_link($dir . '/' . $file);

根据您的项目更改功能的URL部分(你使用https或http?请问/插孔/单总是上传的父文件夹?)

© www.soinside.com 2019 - 2024. All rights reserved.