blackscorp/lazy-before-after-service-provider

用于在Silex中自动调用前后方法的ServiceProvider

v1.2.5 2015-05-15 21:09 UTC

This package is auto-updated.

Last update: 2024-09-17 05:34:49 UTC


README

Build Status

用于 Silex 的ServiceProvider,可以自动调用前后方法。

#用法

你的引导程序可能看起来像这样

<?php
$app = new Application();
$app->register(new ServiceControllerServiceProvider());
$app->register(new LazyBeforeAfterServiceProvider());
$app['controller'] = $app->share(function(){
return MyController();
});
$app->get('/','controller:indexAction');

现在你可以直接添加如 "before", "after"、"before{MethodName}" 和 "after{MethodName}" 的方法,无需在路由器中指定。

这和

$app->get('/','controller:indexAction')
->before(function(){
//some logic
})->after(function(){
//some logic
});

一样,但你有能力在 "Base" 控制器中执行检查并从它扩展。

Provider将按以下顺序调用方法

  1. Before
  2. BeforeAction
  3. Action(由Silex调用)
  4. AfterAction
  5. After