atlantic8-web / slim-magic
自动路由器,用于Slim Framework 3的自动发现类映射/加载器。无论您有多少路由、依赖项和中间件,都能保持Slim引导过程的整洁。
2.0
2017-09-24 07:40 UTC
Requires
- php: ~7.1
This package is not auto-updated.
Last update: 2024-09-14 19:20:13 UTC
README
Slim Framework 3x的引导器/类映射器/加载器。无论您有多少路由、依赖项和中间件,都能保持Slim引导过程的整洁,让您能够以结构化的方式构建真正的大型应用程序。
安装
建议使用 Composer 来安装SlimMagic。
$ composer require atlantic8-web/slim-magic "^1.0"
// or add to your existing composer.json file
这将安装SlimMagic及其所有依赖项。SlimMagic需要PHP 5.5.0或更高版本。
配置
'slim_magic_settings' => [ 'debug'=>false, 'routes' => [ //Home '/' => [ 'methods' => ['GET'], //Can be an array of methods, or ommit for default GET 'classmap' => 'app\Home:index', //String resolver app 'middleware' => [], //Middleware to load for this app 'arguments' => [],//Arguments to pass to this app 'name' => 'home' //App name, also used to generate URL's $slim->setName(...) ], '/admin/dashboard' => [ 'methods' => ['GET'], 'classmap' => 'app\Admin:dashboard', 'middleware' => ['AuthValidation', 'GrapPreload'], 'arguments' => ['isAdmin'], 'name' => 'admin_dashboard' ] ], //This will be applied to all routes/apps 'all' => [ 'middleware' => ['Test', 'Session'],//See Slim docs for importance of order 'service' => ['SessionHelper', 'Twig', 'notFoundHandler'] //Service dependencies ] ]
目录结构
为了保持整洁,我们可以使用文件夹和服务引导器类 - 查看代码示例
MyNewApp -app -config -slim.php -service -Dependency -Middleware -view -model -.htaccess -index.php
用法
创建一个Slim config.php文件,并添加SlimMagic路由设置和配置 - 查看代码示例
创建一个包含以下内容的index.php文件
<?php require 'vendor/autoload.php'; $container = new \Slim\Container(require 'config/slim.php'); $service = new \SlimMagic\ServiceContainer(new \Slim\App($container), $container->slim_magic_settings); new \SlimMagic\Mapper($service); $service->getSlim()->run();
查看代码示例、配置和架构(CLI不再受支持,而是通过引导器处理CLI) 示例
许可证
SlimMagic遵循MIT许可证。有关更多信息,请参阅许可证文件。