溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

php怎么實(shí)現(xiàn)相對(duì)路徑

發(fā)布時(shí)間:2021-07-08 09:14:57 來(lái)源:億速云 閱讀:133 作者:小新 欄目:開(kāi)發(fā)技術(shù)

這篇文章主要為大家展示了“php怎么實(shí)現(xiàn)相對(duì)路徑”,內(nèi)容簡(jiǎn)而易懂,條理清晰,希望能夠幫助大家解決疑惑,下面讓小編帶領(lǐng)大家一起研究并學(xué)習(xí)一下“php怎么實(shí)現(xiàn)相對(duì)路徑”這篇文章吧。

php 算法之實(shí)現(xiàn)相對(duì)路徑的實(shí)例

算出相對(duì)路徑(相同的目錄可以忽略用../ 或者 ./ 表示)

實(shí)現(xiàn)代碼:

class Relatively{ 
  private function __construct(){ 
     
  } 
  /** 
   * 算出相對(duì)路徑(相同的目錄可以忽略用../ 或者 ./ 表示) 
   * @param Strint $path2 
   * @param Strint $path3 
   * @return string 
   */ 
  public static function relaroot($path2,$path3){ 
    $rearray=array(); 
    $arr1=explode('/', dirname($path2)); 
    $arr2=explode('/', dirname($path3)); 
    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); 
  } 
} 
$path2="a/b/c/d/index.php"; 
$path3="/a/b/12/34/index1.php"; 
$a=Relatively::relaroot($path2, $path3); 
echo $a;

以上是“php怎么實(shí)現(xiàn)相對(duì)路徑”這篇文章的所有內(nèi)容,感謝各位的閱讀!相信大家都有了一定的了解,希望分享的內(nèi)容對(duì)大家有所幫助,如果還想學(xué)習(xí)更多知識(shí),歡迎關(guān)注億速云行業(yè)資訊頻道!

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

php
AI