当前位置: 首页>>代码示例>>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;未经允许,请勿转载。