1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
<?php
namespace Meibuyu\Micro\Validator;
use Hyperf\Validation\Contract\ValidatorFactoryInterface;
class HyperfValidator extends AbstractValidator
{
/**
* @var ValidatorFactoryInterface
*/
protected $validator;
public function __construct(ValidatorFactoryInterface $validator)
{
$this->validator = $validator;
}
/**
* Pass the data and the rules to the validator
*
* @param string $action
* @return boolean
*/
public function passes($action = null)
{
$rules = $this->getRules($action);
$messages = $this->getMessages();
$attributes = $this->getAttributes();
$validator = $this->validator->make($this->data, $rules, $messages, $attributes);
if ($validator->fails()) {
$this->errors = $validator->errors();
return false;
}
return true;
}
}