精简路由映射函数到类


Slim route mapping functions to classes

在fatfree框架中,路由可以做这些事情,而不是在回调函数

中编写代码行。
$f3->route('GET /about','WebPage->display');

其中网页->显示是类方法,类将在方法调用之前实例化,我正在考虑在苗条的框架中做同样的事情,但我没有线索,而在他们的官方网站上阅读他们的文档,你能帮助我吗?

您是正确的,截至撰写本文时,我仍然无法在文档中找到有关在Slim框架中将路由映射到类的信息。

但是功能确实存在,从2.4.0版本(2013年11月)开始。它叫做"Class Controllers"

上面的链接提供了一个简单的例子,但我也将提供一个。

你可以使用类作为控制器类实例,作为Slim应用程序路由(及其参数)的回调:

$app->get('/user/:id/', ''User:find');

这将调用User类的find方法,并将:id参数的值作为第一个参数传递给find方法。所以你的回调类可能看起来像这样:

class User {
    public function find($theId) {
        // Do something with $theId...
    }
}

很遗憾,这个有用的Slim Framework特性还没有出现在官方文档中。