Как я могу получить дополнительные параметры $ _GET в Yii2, даже если prettyurl включен?
Мне нужно прочитать некоторые отзывы от перенаправления Paypal-Link, но я не могу изменить формат ссылки на Paypal-Side, чтобы соответствовать моей реализации Yii2:
http://example.com/controller/action?success=boolean&маркер = хуг
Спасибо за вашу помощь!
ты можешь использовать это
http://www.yiiframework.com/doc-2.0/guide-runtime-requests.html
например,
если вам нужно использовать $ _GET [ ‘успех’] или же $ _GET [ ‘маркер’]
Вы должны использовать это:
$request = Yii::$app->request;
$get = $request->get();
$success = $request->get('success');
$token= $request->get('token');
Я выяснил способ:
$url = parse_url(Yii::$app->request->url);
parse_str($url['query'], $array);
$success = $array['success'];
$token = $array['token'];
но это все еще не похоже на правильный Yii2-й способ решить эту проблему.
http://www.yiiframework.com/doc-2.0/yii-web-urlmanager.html Это поможет тебе. Вы можете указать метод GET POST для любого контроллера,
[
'dashboard' => 'site/index',
'POST <controller:\w+>s' => '<controller>/create',
'<controller:\w+>s' => '<controller>/index',
'PUT <controller:\w+>/<id:\d+>' => '<controller>/update',
'DELETE <controller:\w+>/<id:\d+>' => '<controller>/delete',
'<controller:\w+>/<id:\d+>' => '<controller>/view',];
например
'POST <controller:\w+>/<success:\w+>/<token:\w+>' => '<controller>/update',
Используйте класс Request.
http://www.yiiframework.com/doc-2.0/yii-web-request.html
print_r(Yii::$app->request->get());
возвращает все переменные get в массиве. Это как делать print_r($_GET);
в прямой php.
Если вам нужна конкретная переменная $ _GET, вы получаете к ней доступ следующим образом:
Yii::$app->request->get('varName');
В вашем случае это будет:
$success = Yii::$app->request->get('success');
$token = Yii::$app->request->get('token');