<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>

                合規國際互聯網加速 OSASE為企業客戶提供高速穩定SD-WAN國際加速解決方案。 廣告
                # 驗證器 # 驗證器就像是道路紅綠燈一樣,是基礎設施。我在這個上也投入了比較多的心思。 ## 驗證器的使用 ## ### 基本使用 ### 首先新建一個校驗類,比如 `ArticleAdd`,并且繼承 `src\framework\Validation` 類。 class ArticleAdd extends Validation{} 然后在類里添加驗證規則,例如字符串: protected $title = array('require', 'string',1,20,'文章標題必須在 10 到 20 個字符以內!'); 最后再控制器中使用該校驗器,如下: $params = Request::post(); (new ArticleAdd())->eachFields($params); ### 方法驗證中使用參數注入 ### 對于復雜的校驗,我們可以使用方法校驗。即指定類型為`Method`, 自己指定方法所在的類名和方法名,如下代碼: ``` protected $word = [ 'type' => 'Method', 'class' => 'app\\common\\verifications\\WordAdd', 'method_name' => 'wordMustNotExist', 'message' => '該單詞已經存在!' ]; ``` 使用方法驗證可以對單個值進行復雜的校驗,比如檢查是否在數據庫中存在。 但有時候我們需要借助其他的參數來校驗某個參數,比如我們需要檢查某個用戶下 是否已經存在某個數據的時候,我們可以使用在方法驗證中使用參數注入。 在方法驗證中,我們可以使用`injection_args`屬性來指定注入的參數,前提是注入的參數 需要出現在校驗的參數中,可以通過如下的代碼加入欲注入的參數: ``` $params = Request::post(); $params['user_id'] = $this->uid; (new WordAdd())->eachFields($params); // 在校驗類中指定注入參數 protected $word = [ // 其他參數 'injection_args' => ['user_id'], // 參數注入 'message' => '該用戶已經添加該單詞' ]; ``` ### 多重驗證 ### 有時候,我們需要對一個字段進行復雜的組合驗證。比如在單詞本的應用中,在添加一個單詞的時候, ,即需要檢驗其基本的數據類型,又要檢驗其是否在數據表中存在。 這時候,我們就可以使用多重驗證功能。 在驗證類中,添加驗證規則如下,與基本驗證不同的是,多重驗證是二維數組: ``` protected $word = [ [ 'require' => true, 'type' => 'String', 'length' => '1,64', 'message' => '單詞必須在 1 到 64 個字符以內!' ], [ 'type' => 'Method', 'class' => 'app\\common\\verifications\\WordAdd', 'method_name' => 'wordMustNotExist', 'message' => '該單詞已經存在!' ] ]; ``` 多重驗證允許我們將多個驗證規則寫成二維數組。
                  <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>

                              哎呀哎呀视频在线观看