說說Thinkphp5.1實現郵箱驗證問題

下面thinkphp框架教程欄目將給大家講解thinkphp5.1實現郵箱驗證問題,希望對需要的朋友有所幫助!

具體問題:

比如我想驗證這個email是否合法 我想用TP的自帶的驗證規則 應該怎樣驗證呢?我看手冊上要定義個User類我們定義一個appindexvalidateUser驗證器類用于User的驗證。 TP框架驗證郵箱用戶名什么的要這么麻煩嗎?這個驗證器類要寫在哪里呢?跟控制器同級目錄下嗎?

<?php namespace appindexcontroller; use thinkController; use thinkfacadeRequest; use thinkresponse; use thinkView; use thinkValidate; class Register extends Controller {     public function regcheck(){         $data=input(&#39;email&#39;);              } } ?>

解決辦法:

要單個驗證,可以靜態調用的哦

立即學習PHP免費學習筆記(深入)”;

//?驗證是否有效郵箱地址 use?thinkfacadeValidate; Validate::isEmail('thinkphp@qq.com');?//?true

如果驗證的東西比較多,建議還是推薦使用驗證器

驗證器類可以自定義目錄,建議放在 appindexvalidate目錄下。

驗證器類

namespace?appindexvalidate; use?thinkValidate; class?User?extends?Validate { ????protected?$rule?=???[ ????????'name'??=&gt;?'require|max:25', ????????'email'?=&gt;?'email',???? ????]; ???? ????protected?$message??=???[ ????????'name.require'?=&gt;?'名稱必須', ????????'name.max'?????=&gt;?'名稱最多不能超過25個字符', ????????'email'????????=&gt;?'郵箱格式錯誤',???? ????]; ???? }

在控制器里使用:

namespace?appindexcontroller; use?thinkController; class?Index?extends?Controller { ????public?function?index() ????{ ????????$data?=?[ ????????????'name'??=&gt;?'thinkphp', ????????????'email'?=&gt;?'thinkphp@qq.com', ????????]; ????????$validate?=?new?appindexvalidateUser; ????????if?(!$validate-&gt;check($data))?{ ????????????dump($validate-&gt;getError()); ????????} ????} }

? 版權聲明
THE END
喜歡就支持一下吧
點贊8 分享