/** * url加密 参数解密 */ function makeEncryptLinkAndDecryptParams() { $params = $this->params; $link_type = $this->params['link_type']; $dot = $this->params['dot']; $ext = $this->params['ext']; $this->view->cleanLinkCache(); $this->config->set('url', array('rewrite' => false, 'ext' => $ext, 'dot' => $dot, 'type' => $link_type)); $this->view->setLinkBase(''); $link = $this->view->slink('Main:getUrlSecurityParams', array('p1' => $params['p1'], 'p2' => $params['p2'], 'p3' => $params['p3'])); $url_start = 0; switch ($link_type) { case 1: case 3: $url_start = 2; $index_file_name = $this->config->get('url', 'index'); if (strcasecmp($index_file_name, 'index.php') != 0) { $url_start += strlen($index_file_name); } else { $url_start += 1; } break; case 2: case 4: case 5: $url_start = strlen($this->config->get('url', 'index')) + 2; break; } $router = new Router(parent::getConfig()); $r = $router->setRouterParams(explode($dot, substr($link, $url_start)))->getRouter(); $result = $this->sParams($r->getParams()); $this->display($result); }