2011-05-08 10 views

Respuesta

19

Puede obtener URL de la página actual como sigue:

$uri = Zend_Controller_Front::getInstance()->getRequest()->getRequestUri(); 

    // or using userAgent view helper: 
    $uri = $this->userAgent()->getServerValue('request_uri'); 

El ayudante de vista $this->userAgent() devuelve una instancia de Zend_Http_UserAgent que le puede proporcionar información útil a muchos.

Si usted desea conseguir una acción en sus puntos de vista se puede obtener de la siguiente manera:

Zend_Controller_Front::getInstance()->getRequest()->getActionName(); 

No está seguro de lo que entendemos por 'transformación de un recurso'. Desea cambiarlo cuando lo haga eco, o si desea redirigir al usuario. De todos modos, espero que esto ayude.

+1

ya quiero acción de cambio cuando muestre la url! – afsane

+1

@afsane. Podrías obtener la acción actual y la url como escribí, y usar 'str_replace' para cambiar la parte de url con acción a otra cosa. – Marcin

+0

aha, gracias mucho;) – afsane

4

Si su alcance actual es una acción del controlador, puede hacer esto:

$uri = $this->view->serverUrl() . $this->view->url(); 
1

$ frontal = Zend_Controller_Front :: getInstance();
$ fullUrl = 'http: //'.
$ front-> getRequest() -> getHttpHost().
$ front-> getRequest() -> getRequestUri();

No se olvide de protocolo (en este ejemplo http://) si se va a utilizar para $fullUrlhref atributos

+0

Para el esquema, puede hacer '$ front-> getRequest() -> getScheme()' – peter

0

tarde a la fiesta con seguridad, pero los siguientes trabajó para mí en un proyecto Zend 1:

<?php echo htmlspecialchars($this->serverUrl(true)); ?> 

Si usted está haciendo eco a cabo la (suministrado por el usuario) URL de la página, que es una buena idea usar htmlspecialchars() para evitar el envío de sus usuarios a http://example.com/?q=<script>nastyBusiness()</script> alguien.

Cuestiones relacionadas