Yii URLManager和动作参数

时间:2012-11-12 17:42:21

标签: php yii

当我在配置

中关闭网址管理器时
index.php?r=cars/car_detail&id=2&type=delete

显示删除的预期结果 我的控制器代码是:

public function actionCar_detail($id = 0, $type = '')
{
     die($type);
     //codes
}

当我打开URL管理器时, 类型为空,为什么它的行为不同?请帮我一直坚持这段时间。感谢

2 个答案:

答案 0 :(得分:1)

在上述情况下,网址将变为

index.php/cars/car_detail/id/2/type/delete

以上内容将在print_r($_GET);

上输出
Array
(
    [id] => 2
    [type] => delete
)

根据需要使用变量。

一般来说,语法是:

controller/method/param1/value1/param2/value2/......

答案 1 :(得分:0)

在url管理器内部工作url结构默认为/ controller / actionname?params

所以

 /index.php?r=cars/car_detail&id=2&type=delete   
在URL管理器中,它意味着只是查询字符串r
将其格式化为默认网址

/car/car_details?id=2&type=delete  

此网址将转至汽车控制器,然后操作car_details并设置参数ID和类型