本文整理汇总了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;
}