PHP - Slim Framework:在路由闭包中使用大量代码的最佳实践


PHP - Slim Framework: Best practice with a lot of code inside routes closures

我正在使用Slim。在文档中,它们只显示了仅使用一个 index.php 文件的示例,该文件对每个路由的功能都很少。例如:

$app = new 'Slim'Slim();
$app->get('/books/:id', function ($id) {
    //Show book identified by $id
});

但是就我而言,我的索引.php文件越来越大,现在我有很多大多数路由的代码,在这种情况下的最佳实践是什么? 将文件包含在路由闭包中?全局变量(如数据库连接或应用程序配置)的作用域会发生什么情况?谢谢

Brian Nesbitt对此发表了一篇很好的文章:http://nesbot.com/2012/11/5/lazy-loading-slim-controllers-using-pimple。

如果您不想使用疙瘩,则可以从"常见的第一次尝试"部分中了解如何分离文件。

更新:从版本2.4.0开始,您可以使用内置的"类控制器":版本2.4.0