petrgrishin / pipe
项目中间件集成助手
1.1.0
2015-02-19 20:58 UTC
Requires
- php: >=5.3.0
Requires (Dev)
This package is not auto-updated.
Last update: 2024-09-14 17:04:05 UTC
README
项目中间件集成助手
Pipe 使用示例
<?php use PetrGrishin\Pipe\Pipe; // Class name $accessFiltres = [ AccessFilterMiddleware::class, ]; // Or class name with constructor arguments $accessFiltres = [ [AccessFilterMiddleware::class, $paramMiddleware], ]; // Or closure function $accessFiltres = [ function (Request $request, Responce $response, Closure $next) { return $next($request, $response); } ]; // Start the process Pipe::create($request, $response) ->through($accessFiltres) ->through($XSSFiltres) ->then(function (Request $request, Responce $response) { $response->runController($request); });
示例中间件
<?php class AccessFilterMiddleware { protected $paramMiddleware; public function __construct($paramMiddleware = null) { $this->paramMiddleware = $paramMiddleware; } public function __invoke(Request $request, Responce $response, Closure $next) { if ($request->isPost()) { $response->addError('Post is forbidden'); return false; } return $next($request, $response); } }