yii2
Routing und URLs
Suche…
Bemerkungen
Alle URLs sollten über das yii\helpers\Url
Es hilft Ihnen sehr, wenn Sie sich dazu entscheiden, die URL-Regeln in URLManager zu ändern.
URLs erstellen
Hilfe yii \ helpers \ Url bietet eine Reihe statischer Methoden zum Verwalten von URLs. Dieser Helfer kann in Ansichten / Controller-Code verwendet werden.
URL zu einer Route:
echo Url::to(['post/index']);
URL zu einer Route mit Parametern:
echo Url::to(['post/view', 'id' => 100]);
verankerte URL:
echo Url::to(['post/view', 'id' => 100, '#' => 'content']);
absolute URL:
echo Url::to(['post/index'], true);
absolute URL mit dem https-Schema:
echo Url::to(['post/index'], 'https');
Hinweis: Die an die Url::to()
Methode übergebene Route ist kontextsensitiv. Es kann Strommodule und Stromregler verwenden. Angenommen, das aktuelle Modul ist admin
und der aktuelle Controller ist post
:
Relative Route nur mit Aktions-ID (enthält überhaupt keine Schrägstriche):
echo Url::to(['index']); // -->> '/index.php?r=admin%2Fpost%2Findex'
relative Route (hat keinen führenden Schrägstrich):
echo Url::to(['post/index']); // -->> '/index.php?r=admin%2Fpost%2Findex'
absolute Route (beginnt mit Schrägstrich):
echo Url::to(['/post/index']); // -->> '/index.php?r=post%2Findex'
aktuell angeforderte URL:
echo Url::to();
echo Url::to(['']);
Um eine URL basierend auf der aktuellen Route und den GET-Parametern zu erstellen, verwenden Sie Url :: current () .
Angenommen, $_GET = ['id' => 10, 'page' => 7]
, ist die aktuelle Route post/view
.
aktuelle URL:
echo Url::current(); // -->> '/index.php?r=post%2Fview&id=10&page=7'
aktuelle URL ohne page
Parameter:
echo Url::current(['page' => null]); // -->> '/index.php?r=post%2Fview&id=10'
aktuelle URL mit geänderten page
Parameter:
echo Url::current(['page' => 12]); // -->> '/index.php?r=post%2Fview&id=10&page=12'