Skip to content

Commit

Permalink
update readme. modify: Validators in the class must have a suffix 'Va…
Browse files Browse the repository at this point in the history
…lidator'
  • Loading branch information
inhere committed Dec 1, 2017
1 parent aab2457 commit aa05c0d
Show file tree
Hide file tree
Showing 3 changed files with 17 additions and 12 deletions.
9 changes: 7 additions & 2 deletions README.md
Original file line number Diff line number Diff line change
Expand Up @@ -62,7 +62,7 @@ git clone https://gitee.com/inhere/php-validate.git // git@osc

## 使用

<a name="how-to-use"></a>
<a name="how-to-use1"></a>
### 方式 1: 创建一个新的class,并继承Validation

创建一个新的class,并继承 `Inhere\Validate\Validation`。用于一个(或一系列相关)请求的验证, 相当于 laravel 的 表单请求验证
Expand Down Expand Up @@ -145,6 +145,7 @@ $safeData = $v->getSafeData(); // 验证通过的安全数据
$db->save($safeData);
```

<a name="how-to-use2"></a>
### 方式 2: 直接使用类 Validation

需要快速简便的使用验证时,可直接使用 `Inhere\Validate\Validation`
Expand Down Expand Up @@ -175,6 +176,7 @@ class SomeController
}
```

<a name="how-to-use3"></a>
### 方式 3: 创建一个新的class,使用 ValidationTrait

创建一个新的class,并使用 Trait `Inhere\Validate\ValidationTrait`。 此方式是高级自定义的使用方式, 可以方便的嵌入到其他类中
Expand Down Expand Up @@ -252,7 +254,10 @@ class UserController

## 添加自定义验证器

- 在继承了 `Inhere\Validate\Validation` 的子类添加验证方法. 请看上面的 **使用方式1**
- 在继承了 `Inhere\Validate\Validation` 的子类添加验证方法. 请看上面的 [使用方式1](#how-to-use1)

> 注意: 写在当前类里的过滤器方法必须带有后缀 `Validator`, 以防止对内部的其他的方法造成干扰
- 通过 `Validation::addValidator()` 添加自定义验证器. e.g:

```php
Expand Down
16 changes: 8 additions & 8 deletions src/Utils/UserAndContextValidatorsTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -276,7 +276,7 @@ public function requiredWithoutAll($field, $fields)
* @param string|array $suffixes e.g ['jpg', 'jpeg', 'png', 'gif', 'bmp']
* @return bool
*/
public function file($field, $suffixes = null)
public function fileValidator($field, $suffixes = null)
{
if (!$file = $this->uploadedFiles[$field] ?? null) {
return false;
Expand Down Expand Up @@ -308,7 +308,7 @@ public function file($field, $suffixes = null)
* @param string|array $suffixes e.g ['jpg', 'jpeg', 'png', 'gif', 'bmp']
* @return bool
*/
public function image($field, $suffixes = null)
public function imageValidator($field, $suffixes = null)
{
if (!$file = $this->uploadedFiles[$field] ?? null) {
return false;
Expand Down Expand Up @@ -355,7 +355,7 @@ public function image($field, $suffixes = null)
* @param string|array $types
* @return bool
*/
public function mimeTypes($field, $types)
public function mimeTypesValidator($field, $types)
{
if (!$file = $this->uploadedFiles[$field] ?? null) {
return false;
Expand All @@ -382,7 +382,7 @@ public function mimeTypes($field, $types)
* @param string|array $types
* return bool
*/
public function mimes($field, $types = null)
public function mimesValidator($field, $types = null)
{
}

Expand All @@ -396,17 +396,17 @@ public function mimes($field, $types = null)
* @param string $compareField
* @return bool
*/
public function compare($val, $compareField)
public function compareValidator($val, $compareField)
{
return $compareField && ($val === $this->get($compareField));
}

public function same($val, $compareField)
public function sameValidator($val, $compareField)
{
return $this->compare($val, $compareField);
}

public function equal($val, $compareField)
public function equalValidator($val, $compareField)
{
return $this->compare($val, $compareField);
}
Expand All @@ -417,7 +417,7 @@ public function equal($val, $compareField)
* @param string $compareField
* @return bool
*/
public function notEqual($val, $compareField)
public function notEqualValidator($val, $compareField)
{
return $compareField && ($val !== $this->get($compareField));
}
Expand Down
4 changes: 2 additions & 2 deletions src/ValidationTrait.php
Original file line number Diff line number Diff line change
Expand Up @@ -323,8 +323,8 @@ protected function valueValidate($data, $field, $value, $validator, $args)
$passed = $callback($value, ...$args);

// if $validator is a custom method of the subclass.
} elseif (method_exists($this, $validator)) {
$passed = $this->$validator($value, ...$args);
} elseif (method_exists($this, $method = $validator . 'Validator')) {
$passed = $this->$method($value, ...$args);

// $validator is a method of the class 'ValidatorList'
} elseif (method_exists(ValidatorList::class, $validator)) {
Expand Down

0 comments on commit aa05c0d

Please sign in to comment.