>  기사  >  백엔드 개발  >  두 디렉터리의 상대 경로 찾기

두 디렉터리의 상대 경로 찾기

WBOY
WBOY원래의
2016-07-25 08:48:34962검색
求两个目录的相对路径,不限制路径深度
  1. /**
  2. * 输出$b相对于$a的相对路径($a)
  3. * 不限限制路径深度,没有做什么优化,只是实现功能
  4. */
  5. function getPath($a, $b)
  6. {
  7. $aArr = explode('/', dirname($a));
  8. $bArr = explode('/', dirname($b));
  9. $aLen = count($aArr);
  10. $bLen = count($bArr);
  11. $len = max($aLen, $bLen);
  12. $k = 0;
  13. for($i = 0; $i < $len; $i )
  14. {
  15. if($k == 0)
  16. {
  17. if(isset($aArr[$i]) && ($aArr[$i] != $bArr[$i]))
  18. {
  19. $d .= '../';
  20. if(isset($bArr[$i]))
  21. {
  22. $nP[$i] = $bArr[$i];
  23. }
  24. $k = $k 1;
  25. }
  26. }
  27. else
  28. {
  29. if(isset($aArr[$i]))
  30. {
  31. $d .= '../';
  32. }
  33. if(isset($bArr[$i]))
  34. {
  35. $nP[$i] = $bArr[$i];
  36. }
  37. }
  38. }
  39. echo $d.implode('/', $nP);
  40. }
复制代码


성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.