欢迎您访问程序员文章站本站旨在为大家提供分享程序员计算机编程知识!
您现在的位置是: 首页  >  php教程

相对路径转绝对路径

程序员文章站 2022-05-23 10:54:42
...
相对路径转绝对路径
/**
* 相对路径转网络绝对路径
* @param string $file
* @return string
*/
function dirToHttpUrl($file) {

//判断文件是否存在
if (!file_exists($file)) {
return false;
}

//域名
$nowUrl = dirname('http://'.$_SERVER['HTTP_HOST'].$_SERVER['PHP_SELF']); //当前域名
$tempUrl = explode('.', $_SERVER['HTTP_HOST']);
$dirUrl = 'http://www.'.$tempUrl[1].'.'.$tempUrl[2].'/'; //主域名

//文件路径的层次统计
$tempFile = explode('../', $file);
$tempNum = array_count_values($tempFile);

if (array_key_exists('', $tempNum)) {
$fileNum = $tempNum[''];
$fileEnd = end($tempFile);
} else {
$fileNum = 0;
$fileEnd = '/'.substr($tempFile[0], 2);
}

//域名层次统计
$tempWeb = explode('/', $nowUrl);
$tempWeb = array_slice($tempWeb, 3);
$webNum = count($tempWeb);

//文件对应的域名
if ($fileNum > $webNum) {
$nowUrl = $dirUrl;
}

//返回
return $nowUrl.$fileEnd;

}

//dirToHttpUrl('./1.jpg');

AD:真正免费,域名+虚机+企业邮箱=0元