【发布时间】:2012-08-12 10:42:15
【问题描述】:
我想知道如何为需要传递参数的控制器函数创建路由。 就像我创建这样的函数:
function abc($arg)
{
return $arg;
}
那我怎样才能为同一个函数指定一个路由呢?我的论点将包含字母和数字的混合
【问题讨论】:
标签: php codeigniter routing
我想知道如何为需要传递参数的控制器函数创建路由。 就像我创建这样的函数:
function abc($arg)
{
return $arg;
}
那我怎样才能为同一个函数指定一个路由呢?我的论点将包含字母和数字的混合
【问题讨论】:
标签: php codeigniter routing
将此添加到您的 APP_PATH/application/config/routes.php
$route['controller_name/abc/([A-Za-z0-9])+'] = "controller_name/abc/$1";
【讨论】:
使用uri class 并尝试读取传递给您的方法的段
在下面的控制器方法中,您传递 url 段,例如
控制器/函数/argument1/argument2/argument3/4/5/6/..
// controller
public function myfunction(){
var_dump($this->url->segment(1)); // route/abc -> abc
var_dump($this->url->segment(2)); // route/abc/123 -> 123
}
如果函数采用固定长度的参数,则类似于
public function myfunction($arg1,$arg2){
// ..
}
您可以使用路由映射来完成这项工作,
$route["myfunction/(any)"= "remap" // ..
【讨论】: