这是绝对目录
../../../目录一/目录二/文件名
这是典型的相对目录,有几个../,就表示是相对于当前文件所在目录的前几层目录
如果当前目录是根目录了,那无论你加几个../都被忽略不起作用
php 计算两个文件之间的相对路径方法例如:
文件A 的路径是 /home/web/lib/img/cache.php
文件B的路径是 /home/web/api/img/show.php
那么,文件A相对于文件B的路径是 ../../lib/img/cache.php,即文件B 访问 文件A的相对路径。
function getRelativePath
[php] view plain copy
<?php
/** 计算path1 相对于 path2 的路径,即在path2引用paht1的相对路径
* @param String $path1
* @param String $path2
* @return String
*/
function getRelativePath($path1, $path2){
$arr1 = explode('/', $path1)
$arr2 = explode('/', $path2)
// 获取相同路径的部分
$intersection = array_intersect_assoc($arr1, $arr2)
$depth = 0
for($i=0,$len=count($intersection)$i<$len$i++){
if(!isset($intersection[$i])){
$depth = $i
break
}
}
// 将path2的/ 转为 ../,path1获取后面的部分,然后合拼
$tmp = array_merge(array_fill(0, count($arr2)-$depth-1, '..'), array_slice($arr1, $depth))
$relativePath = implode('/', $tmp)
return $relativePath
}
1.相对路径是相对于当前php页面的目录下面,2.如果引入页面里面还有引入页面,相对路径也是相对于当前php页面下,
可能是第二种,
最好实用觉对路径,可以对根目录文件夹绝对路径,定义一个变量,常量,ecshop里面定义的就很好用
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)