从路由调用控制器中的函数
Call function in a Controller from Routes
我一直在寻找这个问题的答案,但还没有真正找到真正的解决方案。最近学了点Laravel,里面有这样的路由:
Route::get('home', 'functionname@controllername');
截至目前,我已经离开 Laravel 并且正在摆弄 CodeIgniter。
我这里的路由是:
$route['home'] = "controllername";
索引函数被调用。我如何提及我需要调用的函数,就像在 Laravel?
中一样
我想这就是你想要的
$route['home'] = "controllername/functionname"
您可以在 codeigniter 2 docs
找到很多示例
Codeigniter-3 也支持回调函数。可以查看详情here
是的,你可以使用路由调用控制器的任何功能,就像这样
$route['home'] = "YourController/Yourfunction"
当您点击 http://example.com/home 时,它会将您重定向到 "Yourfunction"
如果你想为函数传递参数
$route['home/(any:)'] = "yourcontroller/yourfunction"
$route['home/(any:)/num:'] = "yourController/yourfunction//"
(any:) - 对于字符串,num: 对于数字参数,你也可以使用 regexp
您可以按 $1 $2 等对参数重新排序:
$route['home/(any:)/num:'] = "yourcontroller/yourfunction//"
link 看起来像这样:
home/blog/3
函数将被调用:yourfunction(3,'blog');
我一直在寻找这个问题的答案,但还没有真正找到真正的解决方案。最近学了点Laravel,里面有这样的路由:
Route::get('home', 'functionname@controllername');
截至目前,我已经离开 Laravel 并且正在摆弄 CodeIgniter。
我这里的路由是:
$route['home'] = "controllername";
索引函数被调用。我如何提及我需要调用的函数,就像在 Laravel?
中一样我想这就是你想要的
$route['home'] = "controllername/functionname"
您可以在 codeigniter 2 docs
找到很多示例Codeigniter-3 也支持回调函数。可以查看详情here
是的,你可以使用路由调用控制器的任何功能,就像这样
$route['home'] = "YourController/Yourfunction"
当您点击 http://example.com/home 时,它会将您重定向到 "Yourfunction"
如果你想为函数传递参数
$route['home/(any:)'] = "yourcontroller/yourfunction"
$route['home/(any:)/num:'] = "yourController/yourfunction//"
(any:) - 对于字符串,num: 对于数字参数,你也可以使用 regexp
您可以按 $1 $2 等对参数重新排序:
$route['home/(any:)/num:'] = "yourcontroller/yourfunction//"
link 看起来像这样:
home/blog/3
函数将被调用:yourfunction(3,'blog');