當前位置: 首頁>>代碼示例>>PHP>>正文


PHP WebUtils::traversRelPath方法代碼示例

本文整理匯總了PHP中WebUtils::traversRelPath方法的典型用法代碼示例。如果您正苦於以下問題:PHP WebUtils::traversRelPath方法的具體用法?PHP WebUtils::traversRelPath怎麽用?PHP WebUtils::traversRelPath使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在WebUtils的用法示例。


在下文中一共展示了WebUtils::traversRelPath方法的1個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的PHP代碼示例。

示例1: processURLs

 /** ************************************************
  * Turns all relative URLs into absolute URLs
  * @return: null
  * Notes: 
  *   Different forms of urls
  *       /dir/
  *       /dir
  *       /dir/index.php
  *       dir/index.php
  *       dir/index.php?var=v
  *       index.php
  *       /index.php
  *       ./dir
  *       ../../dir
  *       <a href="javascript:;" class="prev"></a>
  ***************************************************/
 private function processURLs()
 {
     $tmpArray = array();
     foreach ($this->aAnchors as $url) {
         $url = trim($url);
         echo $this->sSay('I\'m going to process url: ', $url);
         if (WebUtils::isValidURL($url)) {
             $url = rtrim($url, '/');
             $tmpArray[] = $url;
             //echo $this->sSay('After Processing url: ', $url);
         } else {
             if (strlen($url) <= 0) {
                 continue;
             }
             if ($this->containsJS($url)) {
                 continue;
             }
             if ($this->containsHash($url)) {
                 continue;
             }
             //TODO: Not sure about this might not need it. URLs can contain hashes but link to a differnt page?
             if ($this->containsMailTo($url)) {
                 continue;
             }
             if (strpos($url, '/') === 0) {
                 //means root.
                 $url = rtrim($url, '/');
                 $tmpArray[] = $this->sBaseURL . $url;
             } else {
                 if (strpos($url, './') === 0 || strpos($url, '../') === 0) {
                     //realative path try and travers
                     $url = rtrim($url, '/');
                     echo $this->sSay('I\'ve found a relative path ', $url);
                     $rtn = WebUtils::traversRelPath($this->sURL, $url);
                     echo $this->sSay('I\'ve tried to travers it and arrived at ', $rtn);
                     if (WebUtils::isValidURL($rtn)) {
                         $tmpArray[] = $rtn;
                     } else {
                         echo $this->sSay('Relative url parse failed. url is', $rtn);
                     }
                 } else {
                     //who knows just add it;
                     $url = rtrim($url, '/');
                     echo $this->sSay('Not sure what to do with this url: ', $url);
                     $tmpArray[] = $this->sCurrentPathURL . '/' . $url;
                     echo $this->sSay('So I\'ll add on the current path: ', $this->sCurrentPathURL . '/' . $url);
                 }
             }
             //echo $this->sSay('After Processing url: ', $tmpArray[count($tmpArray)-1]);
         }
     }
     $this->aAnchors = null;
     $this->aAnchors = $tmpArray;
 }
開發者ID:scirelli,項目名稱:spiderman,代碼行數:70,代碼來源:AnchorParser.php


注:本文中的WebUtils::traversRelPath方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。