博主信息
博文 31
粉丝 0
评论 0
访问量 30004
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
Day48-2018/1/23(ThinkPhp5.1验证器和独立验证 )
SmallKing的博客
原创
911人浏览过

ThinkPhp5.1的验证器和独立验证

静态代理

<?php
namespace app\facade;
use think\facade;
class User extends Facade
{
    protected static function getFacadeClass()
    {
        return 'app\validate\User';
    }

}

验证器类继承自Validate类,主要作用初始化rule

<?php

namespace app\validate;


use think\Validate;

class User extends Validate
{
   protected $rule=[
        'name|姓名'=>[
            'require',
        'min'=>2,
        'max'=>20,
    ],
       'email'=>[
           'require',
           'email',
       ],
       'password'=>[
           'require',
           'alphaNum',
       ],
       'mobile'=>[
           'require',
           'mobile',
       ],

   ];
}

控制器类

<?php
namespace app\index\controller;


//use app\validate\User;
use app\facade\User;
use think\Controller;
use think\facade\Validate;



class Demo9 extends Controller
{
    public function test1()
    {
        $date=[
            'name'=>'好好好好好',
            'email'=>'hhhhh@php.cn',
            'password'=>'123abc',
            'mobile'=>'18357636217'
        ];
//自定义验证器类验证。
//        $validate=new User;
//        if (!$validate->check($data)){
//            return $validate->getError();
//        }
//        return '通过验证';
        //静态代理验证
        if (!User::check($date)){
            return User::getError();
        }
        return '通过验证';
    }
    //控制器内定验证方法验证
    public function test2()
    {
        $validate='app\validate\User';
         $date=[
            'name'=>'好好好好好',
            'email'=>'hhhhh@php.cn',
            'password'=>'123abc',
            'mobile'=>'18357636217'
        ];

        $res=$this->validate($date,$validate);
        if (true!==$res){
            return $res;
        }
        return '通过验证';

    }
    //独立验证器
    public function test3()
    {
        $rule = [
            'name|姓名' => [
                'require',
                'min' => 2,
                'max' => 20,
            ],
            'email' => [
                'require',
                'email',
            ],
            'password' => [
                'require',
                'alphaNum',
            ],
            'mobile' => [
                'require',
                'mobile',
            ],
        ];
        $date = [
            'name' => '好好好好好',
            'email' => 'hhhhh@php.cn',
            'password' => '123abc',
            'mobile' => '18357636217'
        ];
        Validate::rule($rule);
        if (Validate::check($date)) {
            return '验证通过';
        } else {
            return Validate::getError();
        }
     }
}


本博文版权归博主所有,转载请注明地址!如有侵权、违法,请联系admin@php.cn举报处理!
全部评论 文明上网理性发言,请遵守新闻评论服务协议
0条评论
作者最新博文
关于我们 免责申明 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习
PHP中文网抖音号
发现有趣的

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号

  • 登录PHP中文网,和优秀的人一起学习!
    全站2000+教程免费学