Как получить параметры Yii непосредственно из строки запроса (URL)


Я использую последнюю версию Yii и пытаюсь в основном сопоставить параметры URL.

Например, если бы мой URL был следующим:

site.com/events/199/111

Какова функция для захвата первого параметра, например, "199", и аналогично снова сказать, чтобы захватить 2-й параметр, например, "111".

Я помню, что у CodeIgniter есть $this->url->segment(1), мне в основном нужна та же функциональность, что и у Yii:)

Author: Zabs, 2014-01-23

4 answers

О чем-то вроде -

$this->createUrl('blah/blahx',array('id'=>2));

Вы можете получить свой параметр, используя -

$x = CHttpRequest::getParam('id'); //outputs x=2 

ИЛИ $x = Yii::app()->getRequest()->getQuery('id'); //x=2 again

 19
Author: Rohan, 2014-01-23 13:33:56

Вы можете попробовать метод getParam

$id = Yii::app()->request->getParam('id');
 4
Author: Jason W, 2014-01-23 13:36:16

Вы должны прочитать это:

Что касается вашей проблемы, вам следует просто создать соответствующее правило URL, например:

'events/<param1>/<param2>'=>'events/view',

А затем в вашем контроллере:

public function actionView($param1, $param2)
{
    // you can now use $param1 and $param2
}
 1
Author: soju, 2014-01-23 13:35:48

Вам просто нужен компонент uri. Вот решение, вы можете использовать компонент uri следующим образом; Yii::app()->uri->сегмент(2);

Для получения дополнительной информации следуйте URL

Http://www.hasandemir.com/how-to-get-contoller-action-segments-like-codeigniter/

 -1
Author: user2677802, 2014-10-11 22:44:15