@@ -77,10 +77,10 @@ git clone https://github.com/inhere/php-validate.git // github
7777git clone https://gitee.com/inhere/php-validate.git // gitee
7878```
7979
80- ## 使用
80+ ## 立即使用
8181
8282<a name =" how-to-use1 " ></a >
83- ### 方式 1: 创建一个新的class,并继承Validation
83+ ### 方式1: 继承类 ` Validation `
8484
8585创建一个新的class,并继承 ` Inhere\Validate\Validation ` 。用于一个(或一系列相关)请求的验证, 相当于 laravel 的 表单请求验证
8686
@@ -151,7 +151,7 @@ class PageRequest extends Validation
151151}
152152```
153153
154- 使用
154+ - 使用
155155
156156``` php
157157// 验证 POST 数据
@@ -171,7 +171,7 @@ $db->save($safeData);
171171```
172172
173173<a name =" how-to-use2 " ></a >
174- ### 方式 2 : 直接使用类 Validation
174+ ### 方式2 : 直接使用类 ` Validation `
175175
176176需要快速简便的使用验证时,可直接使用 ` Inhere\Validate\Validation `
177177
@@ -202,7 +202,7 @@ class SomeController
202202```
203203
204204<a name =" how-to-use3 " ></a >
205- ### 方式 3: 创建一个新的class,使用 ValidationTrait
205+ ### 方式3: 使用trait ` ValidationTrait `
206206
207207创建一个新的class,并使用 Trait ` Inhere\Validate\ValidationTrait ` 。 此方式是高级自定义的使用方式, 可以方便的嵌入到其他类中
208208
@@ -221,7 +221,7 @@ class DataModel
221221 * @param array $data
222222 * @return $this
223223 */
224- public function setData( $data)
224+ public function load(array $data)
225225 {
226226 $this->data = $data;
227227
@@ -248,10 +248,10 @@ class UserModel extends DataModel
248248 public function rules()
249249 {
250250 return [
251- ['username, passwd', 'required', 'on' => 'create' ],
251+ ['username, passwd', 'required'],
252252 ['passwd', 'compare', 'repasswd', 'on' => 'create']
253253 ['username', 'string', 'min' => 2, 'max' => 20, 'on' => 'create' ],
254- ['id', 'number', 'on' => 'update' ],
254+ ['id', 'number', 'on' => 'update' ], // 仅作用于场景 update
255255 ['createdAt, updatedAt', 'safe'],
256256 ];
257257 }
@@ -265,28 +265,27 @@ class UserController
265265 public function addAction()
266266 {
267267 $model = new UserModel;
268- $model->setData($_POST)->atScene('create');
268+ // 载入提交数据并设定场景为: create
269+ $model->load($_POST)->atScene('create');
269270
270271 if (!$ret = $model->create()) {
271272 exit($model->firstError());
272273 }
273274
274275 echo "add success: userId = $ret";
275276 }
276-
277277}
278278```
279279
280280## 添加自定义验证器
281281
282- - 在继承了 ` Inhere\Validate\Validation ` 的子类添加验证方法. 请看上面的 [ 使用方式1] ( #how-to-use1 )
282+ - ** 方式1 ** 在继承了 ` Inhere\Validate\Validation ` 的子类添加验证方法. 请看上面的 [ 使用方式1] ( #how-to-use1 )
283283
284284> 注意: 写在当前类里的验证器方法必须带有后缀 ` Validator ` , 以防止对内部的其他的方法造成干扰
285285
286- - 通过 ` Validation::addValidator() ` 添加自定义验证器. e.g:
286+ - ** 方式2 ** 通过 ` Validation::addValidator() ` 添加自定义验证器. e.g:
287287
288288``` php
289-
290289$v = Validation::make($_POST,[
291290 // add rule
292291 ['title', 'min', 40],
@@ -301,7 +300,7 @@ $v = Validation::make($_POST,[
301300 ->validate();
302301```
303302
304- - 直接写闭包进行验证 e.g:
303+ - ** 方式3 ** 直接写闭包进行验证 e.g:
305304
306305``` php
307306 ['status', function($status) {
@@ -343,7 +342,7 @@ $v = Validation::make($_POST,[
343342
344343> 字段验证器 ` FieldValidation ` 的配置类似,只是 ** 只有一个字段,而验证器允许有多个**
345344
346- ## 规则关键词
345+ ## 规则选项设置
347346
348347除了可以添加字段的验证之外,还有一些特殊关键词可以设置使用,以适应各种需求。
349348
@@ -396,7 +395,6 @@ $v = Validation::make($_POST,[
396395 // ...
397396 $valid = ValidationClass::make($_POST)->atScene('update')->validate();
398397 // ...
399-
400398```
401399
402400### ` when ` -- 规则的前置条件
0 commit comments