model
/**
* Created by PhpStorm.
* User: liaosp
* Date: 2018/3/21
* Time: 9:15
*/
namespace appapimodel;
use thinkValidate;
use thinkModel;
class Validates extends Model
{
private static $rule = array(
'login' => ['password' => 'require', 'user_name' => 'require'],
'add' => [
'user_name' => 'require|alphaDash|max:8|min:2',
'user_nick' => 'require|max:8|min:2',
'phone' => 'require|regex:1[34578]d{9}',
'email' => 'require|email',
'role_id' => 'require',
'flow' => 'require',
// 'access' => 'require',
],
'addNotice' => [
'topic' => 'require',
'content' => 'require|min:1',
// 'start_time' => 'require',
// 'end_time' => 'require',
],
'editUser' => [
'customer_id' => 'require',
'user_name' => 'require|alphaDash|max:8|min:2',
'user_nick' => 'require|max:8|min:2',
'phone' => 'require|regex:1[34578]d{9}',
'email' => 'require|email',
'role_id' => 'require',
'flow' => 'require',
// 'access' => 'require',
],
'editNotice' => [
'announce_id'=>'require',
'topic' => 'require',
'content' => 'require',
// 'start_time' => 'require',
// 'end_time' => 'require',
],
'addRole'=>[
'act_list'=>'require',
'role_desc'=>'require',
'customer_id'=>'require',
'type'=>'require',
],
'userSetting'=>[
'phone' => 'require|regex:1[34578]d{9}',
'email' => 'require|email',
// 'password'=>'require',
'oldPassword'=>'require',
'newPassword'=>'require',
'customer_id'=>'require',
],
'userLogin'=>[
'user_name'=>'require',
'password'=>'require',
// 'captcha'=>'require|captcha'
],
'qreply'=>[
'category_id'=>'require',
'keyword'=>'require',
'content'=>'require',
]
);
public function doValidate($action, $data)
{
//执行验证
$validate = new Validate(self::$rule[$action], [
'password.require|length:6,15' => '请输入密码' | '密码的长度为6~15位',
'username.require' => '请输入用户名',
'captcha.captcha'=>'验证码错误',
'user_name.require'=>'用户名不能为空',
'password.require'=>'密码不能为空',
'keyword.require'=>'关键词不能为空',
'category_id.require'=>'分类不能为空',
'content.require'=>'内容不能为空'
]
);
if (!$validate->check($data)) {
$this->error($validate->getError());
}
}
}
用法
$validate = new appapimodelValidates();
$validate->doValidate('userLogin', $postdata);
直接用这段直接可以验证,返回的是tp自带的$this->error() 的方法,后面再补充,或者创建一个语言库吧,看起来很low