假设我有以下观点:
http://localhost/site/www/index.php/products/view/1
然后
Yii::app()->request->getUrl() ==> /site/www/index.php/products/view/1
Yii::app()->getController()->id ==> products
Yii::app()->getController()->getAction()->id; ==> view
如何访问“/ 1”部分?
答案 0 :(得分:2)
有两种方法可以获取id值。 假设您为Url定义了以下规则:
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
然后你可以在php中使用GET方法获取ID的值:
$id = $_GET['id'];
或者您可以在控制器中为该方法定义一个参数,该参数将自动成为您需要的:
public function viewAction($id) {
//here $id is equal to $_GET['id']
}
请注意,这些参数的名称必须与我们期望的$ _GET
的名称完全相同答案 1 :(得分:1)
您可以使用以下方式将其作为 $ _ GET 变量访问:
$_GET['id']
你怎么问?由于在Yii默认配置(protected / config / main.php)中设置的规则
'<controller:\w+>/<action:\w+>/<id:\d+>'=>'<controller>/<action>',
该规则指定 {controller} / {action} / {值,名为id} 。 您可以根据需要自定义这些规则,请在此处阅读更多相关信息: