baka/router

一个易于创建多个Phalcon集合的工具

0.1.1 2020-04-25 19:14 UTC

This package is auto-updated.

Last update: 2024-09-29 04:31:37 UTC


README

一个易于创建多个Phalcon 集合的工具。

要求

  • 此包需要PHP 7.1或更高版本。
  • Phalcon 3.4或更高版本。

安装

您可以通过composer安装此包。

composer require baka/router

基本用法

require_once __DIR__ . '/vendor/autoload.php';

use Baka\Router\RouteGroup;
use Baka\Router\Route;
use Baka\Router\Utils\Http;

$routes = [
    Route::add('u')->controller('UsersController')->via(Http::GET, Http::POST),
    Route::get('custom-fields'),
    Route::put('users')->action('editUser'),
    Route::add('companies')->middlewares(
        'custom.middleware@before:10,12',
        'custom.middleware2@after'
    ),
];

$anotherRoute = new Route('companies');

$anotherRoute->prefix('/v2')
->controller('CompaniesController')
->namespace('App\\Api\\Controllers')
->via('get','put','post');

$routeGroup = RouteGroup::from($routes)
->addRoute(Route::put('products')->action('edit'))
->addRoute($anotherRoute)
->addMiddlewares('extra.middleware@before')
->defaultNamespace('App\\Default\\Controllers')
->defaultAction('call');

$collections = $routeGroup->toCollections();

var_dump($collections); // 16 Collection instances


// Mount collections to the app

$app = new \Phalcon\Mvc\Micro();

foreach ($collections as $collection){ 
    $app->mount($collection);
}