<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                企業??AI智能體構建引擎,智能編排和調試,一鍵部署,支持知識庫和私有化部署方案 廣告
                [驗證 · ThinkPHP5.0完全開發手冊 · 看云 (kancloud.cn)](http://www.hmoore.net/manual/thinkphp5/129319) [驗證器 · ThinkPHP6.0完全開發手冊 · 看云 (kancloud.cn)](http://www.hmoore.net/manual/thinkphp6_0/1037624) [TOC] [Tp-validate進階thinkphp](https://www.cnblogs.com/lichihua/p/9697354.html) ## **驗證規則** ~~~ $rule = [ 'name|姓名' => 'require|max:25', 'age' => 'number|between:1,120', 'email' => 'email', ]; //或者 $rule = [ 'name' => ['require', 'max' => 25, 'regex' => '/^[\w|\d]\w+/'], 'age|年齡' => ['number', 'between' => '1,120'], 'email' => 'email', ]; //或者方法定義 $validate = \think\facade\Validate::rule('age', 'number|between:1,120') ->rule([ 'name' => 'require|max:25', 'email' => 'email' ]); $rule = [ ['name','require|max:25','名稱必須|名稱最多不能超過25個字符'], ['age','number|between:1,120','年齡必須是數字|年齡必須在1~120之間'], ['email','email','郵箱格式錯誤'] ]; ~~~ >[danger]`|`兩邊不能有空格如:**require |max:25**就會報錯 ## **獨立驗證** ``` $postdata=[ 'name'=>'dash', 'age'=>'20', 'email'=>'xxx.qq.com', 'mobile'=>'13599997078', ]; $rule = [ 'name' => ['require', 'max' => 25, 'regex' => '/^[\w|\d]\w+/'], 'age|年齡' => ['number', 'between' => '1,120'], 'email' => 'email', ]; //實例化并傳入規則 //$validate=new Validate($rule);//tp5的用法 $validate = \think\facade\Validate::rule($rule); //開始驗證 $result=$validate ->batch()->check($postdata); $validate->getError(); ``` ## **驗證器** ``` class AccountEquipmentType extends Validate { protected $rule = [ 'status|狀態' => [ 'require' => 'require', 'max' => '1', ], 'account_name|出賬類型' => [ 'require' => 'require', ] ]; } //控制器執行驗證: $postdata=[ 'name'=>'dash', 'age'=>'20', 'email'=>'xxx.qq.com', 'mobile'=>'13599997078', ]; //實例化 $validate = new AccountEquipmentType (); //開始驗證 $result=$validate ->batch()->check($postdata); //拆開 $v = new AccountEquipmentType (); $v->rule($validate); $v->message($message); $v->batch(true); $result = $v->failException(false)->check($postdata); if (true !== $result) { return $v->getError(); } else { return $result; } ``` ## **自定義驗證規則** 一般會新建個基礎驗證器繼承Validate里面放自定義驗證規則 然后每個模塊的驗證器繼承與基礎驗證器,定義rule 屬性 控制器在實例化模塊驗證器并驗證 ``` namespace app\api\validate; use think\Request; use think\Validate; /** * Class BaseValidate * 驗證類的基類 */ class BaseValidate extends Validate { protected $rule = [ 'name' => 'require|isNotEmpty', 'mobile' => 'require|isMobile', ]; protected $message = [ 'name.require' => '名稱必須', 'name.isNotEmpty' => '名稱不能為空', 'mobile.isMobile' => '手機格式不正確', 'age.between' => '年齡只能在1-120之間', 'email' => '郵箱格式錯誤', ]; protected function isNotEmpty($value, $rule='', $data='', $field='') { if (empty($value)) { return $field . '不允許為空'; } else { return true; } } //手機號的驗證規則 protected function isMobile($value) { $rule = '^1(3|4|5|7|8)[0-9]\d{8}$^'; $result = preg_match($rule, $value); if ($result) { return true; } else { return false; } } } //控制器驗證 //實例化 $validate = new BaseValidate(); //開始驗證 $result=$validate ->batch()->check($postdata); ```
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看