Les meilleures pratiques pour créer des Url absolues avec Zend framework?
Est-il de meilleures pratiques pour créer des Url absolues en utilisant le Zend framework? Je me demande si il y a un helper ou si ce serait juste la concaténation du régime, accueil, etc. à partir de la valeur de $_SERVER variable, puis ajouter le chemin d'accès relatif généré par Zend.
OriginalL'auteur ck. | 2009-12-10
Vous devez vous connecter pour publier un commentaire.
phpfour chemin est OK, mais vous devez vérifier pour https://, ftp://et mailto: trop... 🙂
Je prefefer avoir toutes les url de la racine absolue (
/files/js/jquery.js
). Le "hardcore zend moyen" estecho $this->serverUrl() . $this->baseUrl('cassbase.css'); (ce qui est absolu à l'aide de zend serverurl helper de vue)
$this->baseUrl renvoyer une URL relative à la racine du serveur web, comme indiqué ici : framework.zend.com/manual/en/... , TMHO cette réponse est fausse.
Oui, tu as en partie raison. J'essaie de mettre à jour ma réponse afin de mieux refléter ce que sera renvoyé.
OriginalL'auteur Tomáš Fejfar
Sans mvc
ou avec mvc
OriginalL'auteur Mr Coder
Dans mes applications, je garde une "baseUrl" dans ma demande de config et j'attribue cela à la base de registre sur l'amorçage. Plus tard, j'ai utiliser la Vue suivante aide à générer l'URL:
Avantage: je peux faire n'importe quel changement sur toutes les Url de la vue à partir d'un seul endroit.
Espère que cette aide.
Zend_Registry
est assez inutile. Une meilleure approche serait d'utiliserZend_Controller_Front::setBaseUrl()
etZend_Controller_Front::getBaseUrl()
. De cette façon, vous pouvez également utiliser le helper de vue de sorte que vous n'avez pas à rouler votre propre.OriginalL'auteur Mohammad Emran Hasan
Je ne reviendrai pas utiliser $_SERVER, je voudrais utiliser les valeurs de
Zend_Controller_Request_Http::getServer($keyName);
(ou directement des getters sur l'objet de la requête lorsque cela s'applique - je oublier ceux qui sont membres directs de l'objet et ceux qui doivent être accessibles avec getServer). Techniquement, ce sont exactement les mêmes valeurs, mais l'OMI son mieux accéder à l'Zend moyen que d'utiliser le raw PHP d'accès. Mais oui cat ensemble devrait obtenir ce dont vous avez besoin. C'est en fait la façon dont je l'ai fait pour un SSL plugin de contrôleur/url helper.Il pourrait y avoir une meilleure façon que...
OriginalL'auteur prodigitalson
Utiliser la méthode ci-dessous.
<a href="<?php echo $this->url('application', ['action' => 'detail'], ['force_canonical' => true])?>">
OriginalL'auteur дима