2016-08-25 7 views
4

Ich möchte Bedingung für vorherige Aktion Name überprüfen. Ich habe die vorherige Aktion URL von Yii::$app->request->referrer. Jetzt möchte ich nur Aktionsname analysieren Oder es gibt eine andere Möglichkeit, den Aktionsnamen des Referrers direkt zu erhalten.Yii2 Parsen Aktion Name von Referer URL

+0

Haben Sie das Problem gelöst? – SilverFire

Antwort

6

Sie können die URL leicht analysieren, indem Sie ein Request Objekt verspotten und es an die UrlManger übergeben.

Stellen wir haben URL http://example.com/user/42 und UrlManager hat die folgende Regel: ['user/<id:\d+>' => 'user/view']

$request = new Request(['url' => parse_url(Yii::$app->request->referrer, PHP_URL_PATH)]); 
$url = Yii::$app->urlManager->parseRequest($request); 
var_dump($url); // ['user/view', 'id' => 42] 

Cool, es ist nicht wahr? :)