Continuando con los View Helper que se encuentran incluidos en Zend/View/Helper y que son utilizados comúnmente tenemos a:
URL View Helper
Este nos permite de una manera limpia organizar y generar los enlaces que se visualizan en las vistas, este Helper retornará una cadena que será vinculada al atributo href de la etiqueta html , aunque su real importancia se establece cuando cambiamos el router de la aplicación, evitando pérdidas de tiempo en el cambio de la nueva URL .
url(array $urlOptions = array(), $name= null, $reset= false, $encode = true)
Al ser un View Helper, recordemos que depende de la instancia VIEW, entonces para ejecutarlo simplemente utilizamos $this, asi que su forma sería $this->url()
- $urlOptions(), es un array asociativo (key/value)en pares que será usado por el route por defecto
- $name, nombre del route
- $reset, si se resetea el route o no
- $encode
Ejemplos
<a href="<?php echo $this->url(array('controller'=>'index','action'=>'login'));?>">LOGIN</a>
<a href="<?php echo $this->url(array('controller'=>'noticia','action'=>'2012','variable1'=>'valor1','variable2'=>'valor2')); ?>">Noticias</a>
<a href="<?php echo $this->url(array('module' => 'default','controller' => 'sidebar','action' => 'addfoto', 'id' => '1507'));?>" >Adicionar Foto</a>
<a href="<?php echo $this->url(array('module' => 'default','controller' => 'index','action' => 'index'),null, true);?>" >Regresar</a>
Corregir la adición de parámetros
Es importante tener claridad que al utilizar url view Helper en la generación de enlaces pasando parámetros, los siguientes enlaces deben utilizar el tercer parámetro del helper ( $reset) dándole el valor de TRUE, de esta forma evitamos que en los siguientes enlaces permanezcan los anteriores valores.