Example #1
0
 /**
  * 构造指定页码的URL
  * 
  * @param int $pageNo
  */
 private function buildPageUrl($pageNo)
 {
     if ($this->route) {
         $params = $this->params;
         if (is_string($this->params)) {
             parse_str($this->params, $params);
         }
         //TODO
         unset($params['main_page']);
         unset($params[$this->pageParamName]);
         if ($pageNo > 1) {
             $params[$this->pageParamName] = $pageNo;
         }
         return Zc::url($this->route, $params, $this->scheme);
     } else {
         $requestUri = $_SERVER["REQUEST_URI"];
         $urlArray = parse_url($requestUri);
         $path = $urlArray['path'];
         $query = $urlArray['query'];
         parse_str($query, $params);
         unset($params[$this->pageParamName]);
         if ($pageNo > 1) {
             $params[$this->pageParamName] = $pageNo;
         }
         if (count($params) > 0) {
             $requestUri = $path . '?' . http_build_query($params);
         } else {
             $requestUri = $path;
         }
         return $requestUri;
     }
 }