从路由调用控制器中的函数

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');