yii2
Routage et URL
Recherche…
Remarques
Toutes les URL doivent être créées via helper yii\helpers\Url
cela vous aide beaucoup si vous décidez de changer les règles d'URL dans urlManager.
Création d'URL
Aide yii \ helpers \ Url fournit un ensemble de méthodes statiques pour gérer les URL. Cette aide peut être utilisée dans le code des vues / contrôleurs.
URL vers un itinéraire:
echo Url::to(['post/index']);
URL vers une route avec des paramètres:
echo Url::to(['post/view', 'id' => 100]);
URL ancrée:
echo Url::to(['post/view', 'id' => 100, '#' => 'content']);
URL absolue:
echo Url::to(['post/index'], true);
URL absolue en utilisant le schéma https:
echo Url::to(['post/index'], 'https');
Remarque: La route transmise à la méthode Url::to()
est sensible au contexte. Il peut utiliser le module actuel et le contrôleur actuel. Par exemple, supposons que le module actuel soit admin
et que le contrôleur actuel soit post
:
route relative avec ID action uniquement (ne contient aucune barre oblique):
echo Url::to(['index']); // -->> '/index.php?r=admin%2Fpost%2Findex'
route relative (n'a pas de barre oblique):
echo Url::to(['post/index']); // -->> '/index.php?r=admin%2Fpost%2Findex'
route absolue (commence par une barre oblique):
echo Url::to(['/post/index']); // -->> '/index.php?r=post%2Findex'
URL actuelle demandée:
echo Url::to();
echo Url::to(['']);
Pour créer une URL basée sur l' itinéraire actuel et les paramètres GET, utilisez Url :: current () .
Supposons que $_GET = ['id' => 10, 'page' => 7]
, l'itinéraire actuel est post/view
.
URL courante:
echo Url::current(); // -->> '/index.php?r=post%2Fview&id=10&page=7'
URL actuelle sans paramètre de page
:
echo Url::current(['page' => null]); // -->> '/index.php?r=post%2Fview&id=10'
URL actuelle avec paramètre de page
modifié:
echo Url::current(['page' => 12]); // -->> '/index.php?r=post%2Fview&id=10&page=12'