如何在瘦身php框架中使用Controller和Model作为示例

时间:2017-05-23 07:20:59

标签: php slim

我刚刚使用了作曲家的Slim PHP Framework。任何人都可以建议我如何在苗条框架中使用控制器和模型。在哪里将控制器和模型放在纤薄的框架中。实际上我只想在API中使用slim框架。我想使用控制器。我已阅读其文档,但我无法找到有关控制器和模型的信息。

1 个答案:

答案 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