当我在配置中关闭 URL 管理器时
index.php?r=cars/car_detail&id=2&type=delete
显示预期结果是删除我的控制器代码是:
public function actionCar_detail($id = 0, $type = '')
{
die($type);
//codes
}
当我打开 URL 管理器时,类型为空,为什么它的行为不同?请帮我解决这个问题已经有一段时间了。谢谢
在上述情况下,url 将变为
index.php/cars/car_detail/id/2/type/delete
以上将输出print_r($_GET);
Array
(
[id] => 2
[type] => delete
)
根据需要使用变量。
一般来说,语法是:
controller/method/param1/value1/param2/value2/......
在 url 管理器中工作,url 结构默认为 /controller/actionname?params
所以
/index.php?r=cars/car_detail&id=2&type=delete
在 url 管理器中,这意味着只需查询字符串 r
以将其格式化为默认 url
/car/car_details?id=2&type=delete
此 url 将转到汽车控制器,然后操作 car_details 并设置参数 id 和 type