예제 #1
0
 /**
  * @inheritdocs
  */
 public function GetUrl($controller, $method, $params = '', $requestMethod = '')
 {
     $format = str_replace("{delim}", $this->delim, self::$_format);
     $qs = "";
     $d = "";
     if (is_array($params)) {
         foreach ($params as $key => $val) {
             // if no val, the omit the equal sign (this might be used in rest-type requests)
             $qs .= $d . $key . (strlen($val) ? "=" . urlencode($val) : "");
             $d = $this->delim;
         }
     } else {
         $qs = $params;
     }
     $url = sprintf($format, $controller, $method, $qs);
     // strip off trailing delimiters from the url
     $url = substr($url, -5) == "&" ? substr($url, 0, strlen($url) - 5) : $url;
     $url = substr($url, -1) == "&" || substr($url, -1) == "?" ? substr($url, 0, strlen($url) - 1) : $url;
     $api_check = explode("/api/", RequestUtil::GetCurrentUrl());
     if ($this->stripApi && count($api_check) > 1) {
         $url = $api_check[0] . "/" . $url;
     }
     return $url;
 }