模型自动操作与数据验证

原创2018-12-28 13:34:5979
摘要:<?php namespace app\index\controller; use \think\Controller; //获取器 public function gain() { $res = staff:get(2); \var_dump($res); } //获取器模型文件 class Staff 
<?php
namespace app\index\controller;
use \think\Controller;

//获取器
public function gain()
{
	$res = staff:get(2);
	\var_dump($res);
}

//获取器模型文件
class Staff extends Model
{
	protected function getSexAttr($value)
	{
		$sex = [0=>'男',1=>'女'];
		return $sex[$value];
	}
	//第二个获取器
	protected function getSalaryAttr($value,$data)
	{
		return $data['name'].'工资'.$value;
	}
	//第三个获取器
	protected function getSalaryAttr($value,$data)
	{
		return 'wo'.$data['name'].''.$data['age'].''.$data['salary'];
	}
}
//验证器规则
class Staff extends Validate
{
	//验证规则
	protected $rule = [
		'name'=>'require|length:4,15',
		'sex'=>'in:0,1',
		'age'=>'require|between:18,60',
		'salary'=>'require|gt:1500'
	];
	//自定义错误信息
	protected $message = [
		'name.require' =>'员工姓名不能为空',
		'name.length' =>'姓名必须在4到15个字符之间',
		'sex.in' => '性别必须是男或女',
		'age.require'=>'年龄不能为空',
		'age.between'=>'年龄必须在18到60',
		'salary.require' => '工资必须输入',
		'salary.gt' => '工资必须大于1500'
	];
}
//验证器
class Verify extends Controller
{
	//验证器
	public function demo1()
	{
		//准备要验证的数据
		$data = [
			'name' => 'zhulaoshi',
			'sex'=> 1,
			'age'=> 18,
			'salary'=> 3000
		];

		$validate = new Staff();
		if(!$validate->check($data)){
			dump($validate->getError());
		}eles{
			return'通过';
		}
	}


批改老师:天蓬老师批改时间:2018-12-28 14:11:34
老师总结:其实验证有很多种方式,框架提供了,无疑是最方便的,也可以使用第三方的

发布手记

热门词条