我刚刚使用了作曲家的Slim PHP Framework。任何人都可以建议我如何在苗条框架中使用控制器和模型。在哪里将控制器和模型放在纤薄的框架中。实际上我只想在API中使用slim框架。我想使用控制器。我已阅读其文档,但我无法找到有关控制器和模型的信息。
答案 0 :(得分:3)
Slim不会为您的应用程序强制执行任何特定布局。
我倾向于将PHP源代码与HTML模板分开,因此我使用此模式(取自slim-bookshelf):
app/
├── src
│ ├── Bookshelf
│ │ ├── Author.php
│ │ ├── AuthorController.php
│ │ ├── Book.php
│ │ ├── BookController.php
│ │ └── TwigExtension.php
│ ├── dependencies.php
│ ├── middleware.php
│ └── routes.php
├── templates
│ ├── bookshelf
│ │ ├── author
│ │ │ ├── books.twig
│ │ │ ├── edit.twig
│ │ │ └── list.twig
│ │ └── book
│ │ └── list.twig
│ └── layout.twig
└── settings.php
但是,我的API没有模板,因此我将所有内容都移到了一个级别。此示例来自slim-bookshelf-api,并为每个路由的操作使用单独的类而不是控制器类:
src
├── App
│ └── Action
│ ├── HomeAction.php
│ └── PingAction.php
├── Bookshelf
│ ├── Action
│ │ ├── CreateAuthorAction.php
│ │ ├── DeleteAuthorAction.php
│ │ ├── EditAuthorAction.php
│ │ ├── GetAuthorAction.php
│ │ └── ListAuthorsAction.php
│ ├── Author.php
│ ├── AuthorMapper.php
│ └── AuthorTransformer.php
├── dependencies.php
├── middleware.php
├── routes.php
└── settings.php