php 算法之实现相对路径的实例

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php 算法之实现相对路径的实例脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。

PHP 算法之实现相对路径的实例

算出相对路径(相同的目录可以忽略用../ 或者 ./ 表示)

实现代码

<PRe class="brush:PHp;"> class Relatively{ private function __construct(){

}
/**

  • 算出相对路径(相同的目录可以忽略用../ 或者 ./ 表示)
  • @param Strint $path1
  • @param Strint $path2
  • @return string
    */
    public static function relaroot($path1,$path2){
    $rearray=array();
    $arr1=explode('/',dirname($path1));
    $arr2=explode('/',dirname($path2));
    for($i=0,$len=count($arr2)-1;$i<$len;$i++){
    if($arr1[$i]!=$arr2[$i]){
    break;
    }
    if($i==1){
    $rearray=array();
    }
    if($i!=1 && $i<$len){
    $rearray=array_fill(0,$len-$i,'..');
    }
    if($i==$len){
    $rearray=array('./');
    }
    }
    $reroot=array_merge($rearray,array_slice($arr2,$i));
    return implode('/',$reroot);
    }
    }
    $path1="a/b/c/d/index.PHP";
    $path2="/a/b/12/34/index1.PHP";
    $a=Relatively::relaroot($path1,$path2);
    echo $a;

脚本宝典总结

以上是脚本宝典为你收集整理的php 算法之实现相对路径的实例全部内容,希望文章能够帮你解决php 算法之实现相对路径的实例所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。