zoukankan      html  css  js  c++  java
  • TP5.1中的验证类 validate用法


    在TP5.1 中推荐使用验证器进行数据的验证 以下是数据验证的简单实例:

    #控制器代码:

    <?php
    namespace appindexcontroller;
    use thinkController;
    
    class Index
    {
    
        #测试验证器使用规则
        public function yz(	hinkfacadeRequest $data)#TP5.1中的依赖注入方法 
        {
         #实例化验证验证器
    $res=new appindexvalidateIndex;
         #对数据进行验证
    if(!$res->Check($data::post())){ return json($res->getError()); }else{
           return json('验证通过');
        } } }

    #验证器代码:

    <?php
    namespace appindexvalidate;   
    use thinkValidate;  #导入TP的验证器类
    
    class Index extends Validate #继承父类
    {
       #$rule中写入验证规则 格式['字段名称|别名'=>'验证规则'] #多个规则使用'|'隔开;
       #TP 验证类文件中有丰富的方法 require 代表该字段数据不能为空
    protected $rule = [ 'name|名称'=>'require|max:5', 'age|年龄'=> 'require|number', 'email|邮箱'=>'require', ]; }

     

    我们自己建立的模型文件中仅需要在继承TP的验证类后只需要写入验证的内容即可;

    我们使用POSTman提交数据进行测试: 

      我们定义的验证的字段有 name->age->email  TP框架会安装先后顺序对数据进行判断,遇到格式不符合规则的数据则立即返回布尔值;

      我们首先提供合法的验证数据:

      name=demo; age=1; email=xxx@qq.com  

      系统返回验证通过

      

    接着使用不合法的数据进行验证  我们的验证规则中定义  'age|年龄'=> 'require|number',

      意思为:age字段的数据 不能为空且只能为数字

      我们给age提交一个中文试试看返回结果:

     

    框架返回年龄必须是数字    其中在控制器中的代码  在验证不通过的情况下我们使用的是validata中的 getError()方法返回的错误

     以上为TP验证器的基本使用方法,更多方法以及验证规则请查阅TP官方文档或者查阅Validata.php源代码

      

  • 相关阅读:
    Samba 4.0 RC3 发布
    SymmetricDS 3.1.7 发布,数据同步和复制
    Express.js 3.0 发布,Node.js 的高性能封装
    GIFLIB 5.0.1 发布,C语言的GIF处理库
    jQuery UI 1.9.1 发布
    SVN Access Manager 0.5.5.14 发布 SVN 管理工具
    DynamicReports 3.0.3 发布 Java 报表工具
    HttpComponents HttpClient 4.2.2 GA 发布
    AppCan 2.0 正式发布,推移动应用云服务
    Ruby 2.0 的新功能已经冻结
  • 原文地址:https://www.cnblogs.com/LiChen-789/p/9764176.html
Copyright © 2011-2022 走看看