求相对路径的函数

3. 写一个函数,算出两个文件的相对路径
如 $a = '/a/b/c/d/e.php';
$b = '/a/b/12/34/c.php';
计算出 $b 相对于 $a 的相对路径应该是 ../../c/d将()添上

  1. <?php
  2. $a = '/a/b/12/34/e.php';
  3. $b = '/a/b/12/44/c.php';
  4. function getRelativePath($a$b) {
  5.     $returnPath = array(dirname($b));
  6.     $arrA = explode('/'$a);
  7.     $arrB = explode('/'$returnPath[0]);
  8.     for ($n = 1, $len = count($arrB); $n < $len$n++) {
  9.         if ($arrA[$n] != $arrB[$n]) {
  10.             break;
  11.         } 
  12.     }
  13.     if ($len - $n > 0) {
  14.         $returnPath = array_merge($returnPatharray_fill(1, $len - $n'..'));
  15.     }
  16.     
  17.     $returnPath = array_merge($returnPatharray_slice($arrA$n));
  18.     return implode('/'$returnPath);
  19. }
  20. echo getRelativePath($a$b);

 

评论 4
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值