benmajor / slim3-controller
为Slim3框架添加控制器支持。
1.0.0
2019-09-10 09:25 UTC
Requires
- php: >=5.3.0
- slim/slim: ~3.0
This package is auto-updated.
Last update: 2024-09-10 20:34:36 UTC
README
Slim 3 Controller此包为Slim 3框架添加控制器支持。当使用Slim和原生的Slim Twig视图扩展构建MVC应用时,这尤其有用。
安装
可以通过Composer安装,如下所示:
composer require benmajor/slim3-controller
用法
本文档中所有文件引用均相对于Slim3安装的根目录。
您应该首先在您的项目中扩展Controller类,以添加项目的自定义功能。以下是一个自定义控制器的简单示例(注意使用了命名空间)
/controllers/Contact.php
<?php namespace MyApp\App\Controller; use BenMajor\Slim3Controller\Controller; class ContactController extends Controller { public function index() { return $this->render('contact-main.twig', [ /* view data here */ ]); } public function send() { // Handle the sending of the contact form. } }
为了使用ContactController,您必须将其定义用于与其他应用路由一起使用。以下示例展示了如何利用控制器支持
/routes.php
<?php use MyApp\App\Controller; // Define the controllers: $controllers = [ 'contact' => new ContactController($app) ]; $app->group('/contact', function() use ($app, $controllers) { $app->get('/', $controllers['contact']('index')); $app->post('/', $controllers['contact']('send')); });
致谢
感谢@martynbiz在原始Slim 3 Controller上的出色工作。