even

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

1、验证器的使用

验证器的调用

普通调用

$data = [
    'name' => '',
    'age' => 100,
    'sex' => 0,
    'phone' => 13752812824
];

$v = new Validate();      
$v->rule([
    'name' => 'require|length: 1,25',
    'sex' => 'require|in: 0,1',
]);

$v->message([
    'name.require' => '请输入名字',
    'name.length' => '名字的长度是1到25之间',
    'sex.require' => '请输入性别',
    'sex.in' => '性别必需为0或者1'
]);

$res = $v->check($data);
dump($res);
//输出false
dump($v->getError());
//输出 请输入名字

另一种调用

$validate = (new Validate([
    ['name', 'require|max:25', '请输入名字|名字长度最大不能超过25'],
    ['age','require|<:200', '请填充入年龄|年龄不能超过200'],
    ['sex', 'in:0,1', '性别必需为0或者1'],
    ['phone', 'require|unique:user,phone|regex:\d{11}', '请输入电话|电话已经被注册了|电话的长度为11位数']
]));
$res = $validate->check($data); dump($res); dump($validate->getError()); if($res === false) { dump(User::getInfo()); } $v = validate('VUser')->check($data); dump($v); dump(validate('VUser')->getError());

也可以单独分离出来,建立单独的文件

<?php
namespace app\index\validate;
use think\Validate;
class VUser extends Validate
{
    protected $rule = [
        ['name', 'require|max:25', '请输入名字|名字长度最大不能超过25'],
        ['age','require|<:200', '请填充入年龄|年龄不能超过200'],
        ['sex', 'in:0,1', '性别必需为0或者1'],
        ['phone', 'require|unique:user,phone|regex:\d{11}', '请输入电话|电话已经被注册了|电话的长度为11位数']
    ];

    protected $scene = [
        'abc' => ['name', 'age'],
        'efg' => ['sex', 'phone']
    ];

}

调用

public function index(){
    $data = [
        'name' => '',
        'age' => 100,
        'sex' => 0,
        'phone' => 13752812824
    ];
    $v = validate('VUser');     //方式一
//    $v = Loader::validate('VUser');  //方式二
//    $v = new VUser();                //方式三
    $res = $v->scene('efg')->check($data);
    $msg = $v->getError();
    dump($res);
    dump($msg);
}

 验证器的内置规则如链接

 2、缓存的使用

缓存
    
    a) 缓存的作用:

        减少数据库压力
        用户交互比较

    b) TP对缓存的支持

        支持的缓存类型包括file、memcache、wincache、sqlite、redis和xcache。

    c) 缓存设置(C:\AppServ\www\tp5\application\config.php)

        'cache'                  => [
            // 驱动方式
            'type'   => 'File',
            // 缓存保存目录
            'path'   => CACHE_PATH,
            // 缓存前缀
            'prefix' => '',
            // 缓存有效期 0表示永久缓存
            'expire' => 0,
        ],

    d) 使用

        1、设置缓存

            Cache::set(名字,值,时间);
            cache(名字,值,时间);

            # 返回值 如果设置成功 true
            # 如果设置失败 false


        2、读取缓存

            Cache::get(名字);
            cache(名字);

            # 返回值 如果获取成功 获取到的数据
            # 如果获取失败 false

        3、删除缓存

            Cache::rm('UserData');
            cache('UserData',NULL);

            # 返回值 删除成功 true
            # 删除失败 false

        4、清空缓存

            Cache::clear();

            # 返回值 清空缓存成功 true 否则 false


        5、使用缓存

            // 从缓存中获取数据

            if ($data=cache('UserData')) {
            
                // 如果数据存在
                
            }else{
                // 如果缓存中没有数据
                $data=Db::table('User')->select();

                cache('UserData',$data,20);
            }

 

 

 

 

 

10、常用常量

  IS_WIN:判断当前是否是window系统

  THINK_PATH:返回的是当前thinkphp的工作目录

  APP_PATH:返回的是application的工作目录

posted on 2019-09-28 22:40  even_blogs  阅读(174)  评论(0编辑  收藏  举报