<?php
/**
* Created by PhpStorm.
* User: IO
* Date: 2020/11/12
* Time: 17:05
*/
namespace app\common\validate;
use think\Validate;
class Group extends Validate
{
protected $rule = [
'name' => 'require|chsDash|length:4,128',
'send_userid' => 'require|array',
'content' => 'chsDash',
'image_url' => 'isimgurl',
'msgtype' => 'require|in:image,text',
'send_type' => 'require|number|between:1,2,'
];
//自定义验证器
protected function isimgurl($value, $rule = '', $data = '', $field = '') {
if (preg_match('/^[_0-9a-z\.]{4,50}$/i',$value)){
return true;
} else {
return $value . '图片url不合法';
}
}
/**
* 提示消息
*/
protected $message = [
'name.require' => '群消息发送名称不得为空'
];
/**
* 验证场景
*/
protected $scene = [
'add' => ['name', 'send_userid', 'content', 'msgtype','send_type','image_url']
];
}
使用
use think\Validate;
use think\Loader;
$validate = Loader::Validate('Group');
if ( !$validate->scene('add')->check($post_data)){
$this->error($validate->getError());
}