function function_url($params)
 {
     if (isset($params['uri'])) {
         $inner_url = new \Hiano\Route\InnerUrl($this->request->getParameter('module'), $this->request->getParameter('controller'), $this->request->getParameter('action'));
         $arr = $inner_url->parse($params['uri']);
     } else {
         $arr = $this->request->getParameter();
     }
     if (isset($params['append'])) {
         $arr = array_merge($arr, \Hiano\Route\StandardUrl::query2array($params['append']));
     }
     $url = \Hiano\App\App::getRouter()->format($arr);
     if ($params['return']) {
         $u = new \Hiano\Route\StandardUrl($url);
         $u->setQuery('return', \Hiano\App\App::getUrl());
         $url = $u->build();
     }
     return $url;
 }
Beispiel #2
0
 /**
  * 将POST参数转为GET参数,并跳转,后面的代码不再执行
  * @param string $inner_url
  */
 static function redirectPostAsParameter($inner_url = null)
 {
     if ($inner_url === NULL) {
         $inner_url_arr = self::$request->getParameter();
     } else {
         $inner_url_obj = new \Hiano\Route\InnerUrl(self::getModuleName(), self::getControllerName(), self::getActionName());
         $inner_url_arr = $inner_url_obj->parse($inner_url);
     }
     $ps = self::$request->getPost();
     $arr = array_merge($inner_url_arr, $ps);
     $url = self::getRouter()->format($arr);
     self::redirectOut($url);
 }