博客列表 >5月25日作业——写一个验证器,并在控制器中进行调用

5月25日作业——写一个验证器,并在控制器中进行调用

钱光照的博客
钱光照的博客原创
2018年05月27日 01:43:24773浏览

5月25日作业

自己写一个验证器,并在控制器中进行调用

一、验证器类:包括验证规则和错误信息\application\Validate\Students.php

实例

<?php
namespace app\validate;

use think\Validate;


class Students extends Validate
{
	//验证规则
	protected $rule = [
	    'name'=>'require|length:4,15',
	    'sex'=>'in:0,1',
	    'age'=>'require|between:18,100',
	    'grade'=>'require|gt:30'
	];

	//错误信息
	protected $message=[
	    'name.require'=>'员工姓名不能为空',
	    'name.length'=>'姓名必须在4-15个字符之间',
	    'sex.in'=> '性别必须是男或女',
	    'age.require' => '年龄不能为空',
	    'grade.require' => '成绩要超过30'
	];	

运行实例 »

点击 "运行实例" 按钮查看在线实例

二、数据验证

在控制器中添加如下代码:\application\index\controller\Verify.php

实例

<?php
namespace app\index\controller;
use think\Controller;
use app\validate\Students;//导入验证器类
use think\Validate;

class Verify extends Controller
{
    //验证器
    public function demo1()//方法一:
    {
    	//准备要验证的数据
    	$data = [
    	    'name'=>'qian guang zhao',
    	    'sex'=>0,
    	    'age'=>30,
    	    'grade'=>110
    	];

    	$validate = new Students();
    	if(!$validate->check($data)){
    		dump($validate->getError());
    	} else {
    		return '验证通过';
    	}
    }

    public function demo2()//方法二:
    {
    	//准备要验证的数据
    	$data = [
    	    'name'=>'qian guang zhao',
    	    'sex'=>0,
    	    'age'=>30,
    	    'grade'=>110
    	];
    	//准备验证规则
    	$rule = 'app\validate\Students';
    	$res = $this->validate($data,$rule);
    	if(true!=$res){
    		return $res;//返回错误信息
    	}
    	
    	return '验证成功';
    }
}

运行实例 »

点击 "运行实例" 按钮查看在线实例


声明:本文内容转载自脚本之家,由网友自发贡献,版权归原作者所有,如您发现涉嫌抄袭侵权,请联系admin@php.cn 核实处理。
全部评论
文明上网理性发言,请遵守新闻评论服务协议