Php 如何为codeigniter中需要参数的控制器函数创建路由
我想知道如何为需要传递参数的控制器函数创建路由。 比如,如果我创建一个如下函数:Php 如何为codeigniter中需要参数的控制器函数创建路由,php,codeigniter,routing,Php,Codeigniter,Routing,我想知道如何为需要传递参数的控制器函数创建路由。 比如,如果我创建一个如下函数: function abc($arg) { return $arg; } 那么,如何为同一功能指定路由?我的参数将包含字母和数字的混合体使用并尝试读取传递给方法的段 在下面的控制器方法中,传递url段,例如 控制器/功能/argument1/argument2/argument3/4/5/6/ // controller public function myfunction(){ var_dump(
function abc($arg)
{
return $arg;
}
那么,如何为同一功能指定路由?我的参数将包含字母和数字的混合体使用并尝试读取传递给方法的段
在下面的控制器方法中,传递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" // ..
将此添加到您的应用程序路径/application/config/routes.php
$route['controller_name/abc/([A-Za-z0-9])+'] = "controller_name/abc/$1";
有关更多详细信息,请参见。我用(:any)代替([a-z]*\d*)+i,它工作了。塔克斯