Search code examples
phpzend-frameworkzend-viewzend-controller

How to reencode url parameters with Zend Framework


I use the following code with my Zend Framework application:

controller:

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

view:

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

This works fine, except when there are any characters in the parameters that need to be escaped (encoded), like url's. How can I in the best way encode this array of parameters?

Edit:

What I am searching actually is the possibility to pass the a parameter to the url function that makes sure that my url-parameters are encoded (why isn't that done standard anyway?).


Solution

  • One way of escaping the parameters is to use array_map and urlencode:

    $paramsOtherAction = array_map('urlencode', $paramsOtherAction);