Как перекодировать параметры URL с помощью Zend Framework - PullRequest
0 голосов
/ 18 января 2010

Я использую следующий код с моим приложением Zend Framework:

Контроллер:

$paramsOtherAction = $this->getRequest()->getParams();
$paramsOtherAction['action'] = 'otheraction'
$this->view->paramsOtherAction = $paramsOtherAction;

вид:

<a href="<?php echo $this->url($this->paramsOtherAction)?>"> Do other action with same params </a>

Это работает нормально, за исключением случаев, когда в параметрах есть символы, которые необходимо экранировать (закодировать), например, URL. Как я могу наилучшим образом кодировать этот массив параметров?

Edit:

На самом деле я ищу возможность передать параметр a в функцию url, которая гарантирует, что мои параметры url закодированы (почему в любом случае это не делается стандартно?).

Ответы [ 2 ]

2 голосов
/ 18 января 2010

Одним из способов экранирования параметров является использование array_map и urlencode:

$paramsOtherAction = array_map('urlencode', $paramsOtherAction);
2 голосов
/ 18 января 2010

Используйте функцию urlencode :

foreach ( $paramsOtherAction as $key => $value )
{
    $paramsOtherAction[$key] = urlencode ( $value );
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...