herosphp/validate
最新稳定版本:v1.0.0
Composer 安装命令:
composer require herosphp/validate
包简介
validate adapter herosphp Framework
关键字:
README 文档
README
在中间件上进行验证
install
composer install herosphp/validate
usage
在中间件层验证参数是正确
<?php
namespace app\middleware;
use herosphp\core\HttpRequest;
use herosphp\core\MiddlewareInterface;
use herosphp\plugin\validate\Valid;
use herosphp\plugin\validate\Validate;
use herosphp\plugin\validate\ValidateException;
use herosphp\WebApp;
class ValidateMiddleware implements MiddlewareInterface
{
/**
* @throws \ReflectionException
*/
public function process(HttpRequest $request, callable $handler)
{
$reflectionMethod = new \ReflectionMethod(WebApp::$_targetController, WebApp::$_targetMethod);
$reflectionAttributes = $reflectionMethod->getAttributes(Valid::class);
if ($reflectionAttributes) {
foreach ($reflectionAttributes as $validAttribute) {
/** @var Valid $methodValidInstance */
$methodValidInstance = $validAttribute->newInstance();
$methodVInstance = new ($methodValidInstance->class);
if (!$methodVInstance instanceof Validate) {
throw new ValidateException("{$methodVInstance->class} must extend \\herosphp\\plugin\\validate\Validate");
}
$methodVInstance->scene($methodValidInstance->scene)->check([...$request->get(), ...$request->post()]);
}
}
return $handler($request);
}
}
统计信息
- 总下载量: 119
- 月度下载量: 0
- 日度下载量: 0
- 收藏数: 0
- 点击次数: 1
- 依赖项目数: 1
- 推荐数: 0
其他信息
- 授权协议: MIT
- 更新时间: 2022-09-20