您好,登錄后才能下訂單哦!
這篇文章給大家分享的是有關Thinkphp5使用validate實現驗證功能的方法的內容。小編覺得挺實用的,因此分享給大家做個參考。一起跟隨小編過來看看吧。
作為前端er,對于驗證這塊有著切身的體會,雖然逐漸得心應手,但始終沒有一個內置的功能拿來就能用。tp5恰好提供一個。本文簡單介紹并實現以下。主要是實現一下。
驗證的實現基于tp5內置的對象validate。
在Index模塊化下index控制器同級目錄創建一個validate文件,里面一個Vdate.php驗證文件,這個文件也可以放在common目錄下面,只要namespace正確就可。代碼如下
<?php namespace app\index\validate; use think\Validate; class Vdate extends Validate{ //每個字段對應一個規則,這是第一層 protected $rule=[ ["name","require|max:10","不能為空|分類名不能超過10個字符"], ["parent_id","number","必須為數字"], /* ["id","number","必須是數字"], ["status","number|in:1,0,-1","必須是數字|必須是是0,-1,1"],*/ ]; //應用的場景,這是第二層 protected $scene=[ "save"=>["name","parent_id"], ]; }
可以寫多個字段,就如同我注釋的。
然后前端頁面代碼:
<!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <title>驗證數據</title> </head> <body> <form action="{:url('index/validateF')}" method="GET"> <input type="text" name="name"> <input type="submit" value="提交"> </form> </body> </html>
后端控制器index下面對應的validateF
public function validateF() { $data=input("get."); print_r($data); $validate=validate("Vdate"); //使用驗證 //scene("save")->check($data)內置方法 if(!$validate->scene("save")->check($data)){ $this->error($validate->getError());//內置錯誤返回 } //剩下操作 $res=model("category")->add($data); if($res){ $this->success('新增成功'); }else{ $this->error("新增失敗!"); } }
感謝各位的閱讀!關于Thinkphp5使用validate實現驗證功能的方法就分享到這里了,希望以上內容可以對大家有一定的幫助,讓大家可以學到更多知識。如果覺得文章不錯,可以把它分享出去讓更多的人看到吧!
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。