国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > ThinkPHP > 正文

thinkPHP5框架自定義驗證器實現方法分析

2024-09-09 15:20:27
字體:
來源:轉載
供稿:網友

本文實例講述了thinkPHP5框架自定義驗證器實現方法。分享給大家供大家參考,具體如下:

普通的驗證器手冊上已經很詳細,我們講解一下如何自定義一個驗證器

首先我們在模塊目錄下建立validata文件夾

然后在里面建立一個類,取名為IdMustInt.php

代碼如下:注意,我的模塊名為api,所以命名空間如下

保護屬性$rule為官方規定,不能改變,其實驗證規則require都是封裝好的函數名,所以我們也建立一個方法,方法名填寫在驗證規則后面即可。

  1. namespace app/api/validate; 
  2. use think/Validate; 
  3. class IdMustInt extends Validate 
  4.   protected $rule = [ 
  5.     'id' => 'require|IsInt' 
  6.   ]; 
  7.   protected function IsInt($value,$rule,$data,$field){ 
  8.   //參數依次為驗證數據,驗證規則,全部數據(數組),字段名 
  9.   //這里我們要判斷的驗證的數據要求必須為正整型 
  10.     if(is_numeric($value) && is_int($value+0) && ($value+0) > 0){ 
  11.       return true; 
  12.     }else
  13.   //如果不符合我們的條件,返回錯誤信息,在控制器中可以用getError()方法輸出 
  14.       return $field.'不是整型'
  15.     } 
  16.   } 

接下來看我們控制器的對應操作。

  1. public function getBanner($id
  2.     //需要驗證的數據 
  3.     $data = [ 
  4.       'id' => $id
  5.     ]; 
  6.   //實例化驗證器 
  7.     $validate = new IdMustInt(); 
  8.   //如果驗證數據較多,條件也較多,需要批量返回所有錯誤信息的話,可以在check()前加上$validata->batch() 
  9.     $result = $validate->check($data); 
  10.     if($result){ 
  11.       //業務邏輯 
  12.     }else
  13.       dump($validate->getError()); 
  14.     } //Vevb.com 

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表

圖片精選

主站蜘蛛池模板: 大宁县| 日照市| 海宁市| 临西县| 油尖旺区| 连江县| 凤凰县| 怀来县| 广灵县| 浦县| 新密市| 汕尾市| 上蔡县| 武邑县| 沧州市| 沾化县| 长乐市| 安庆市| 弥渡县| 三门峡市| 遵化市| 南涧| 临洮县| 抚州市| 吉隆县| 贞丰县| 抚顺县| 建始县| 西和县| 柏乡县| 襄垣县| 壶关县| 陆丰市| 沾益县| 太康县| 寻乌县| 普兰店市| 喀什市| 晋江市| 平顺县| 长泰县|