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

                ??一站式輕松地調用各大LLM模型接口,支持GPT4、智譜、豆包、星火、月之暗面及文生圖、文生視頻 廣告
                ## laravel 可用驗證規則 ## 可用的驗證規則 下方列出了所有可用的驗證規則及其功能: Accepted Active URL After (Date) After Or Equal (Date) Alpha Alpha Dash Alpha Numeric Array Bail Before (Date) Before Or Equal (Date) Between Boolean Confirmed Date Date Equals Date Format Different Digits Digits Between Dimensions (Image Files) Distinct Email Ends With Exclude If Exclude Unless Exists (Database) File Filled Greater Than Greater Than Or Equal Image (File) In In Array Integer IP Address JSON Less Than Less Than Or Equal Max MIME Types MIME Type By File Extension Min Not In Not Regex Nullable Numeric Password Present Regular Expression Required Required If Required Unless Required With Required With All Required Without Required Without All Same Size Sometimes Starts With String Timezone Unique (Database) URL UUID #### accepted 待驗證字段必須是*yes*,*on*,*1*或*true*。這在確認「服務條款」是否同意時很有用。 #### active\_url 根據 PHP 函數`dns_get_record`,驗證字段必須具有有效的 A 或 AAAA 記錄。URL 所提供的主機名時在傳遞給`dns_get_record`函數前使用`parse_url`函數獲取到的。 #### after:*date* 待驗證字段必須是給定的日期之后的值對應的日期。日期將被傳遞給 PHP 函數`strtotime`: ~~~php 'start_date' => 'required|date|after:tomorrow' ~~~ 您亦可指定另一個要與日期比較的字段,而不是傳遞要由`strtotime`處理的日期字符串: ~~~php 'finish_date' => 'required|date|after:start_date' ~~~ #### after\_or\_equal:*date* 待驗證字段的值對應的日期必須在給定日期之后或與給定的日期相同。可參閱[after](https://learnku.com/docs/laravel/8.x/validation/9374#rule-after)規則獲取更多信息。 #### alpha 待驗證字段只能由字母組成。 #### alpha\_dash 待驗證字段可能包含字母、數字,短破折號(-)和下劃線(\_)。 #### alpha\_num 待驗證字段只能由字母和數字組成。 #### array 待驗證字段必須是有效的 PHP`數組`。 #### bail 在首次驗證失敗后立即終止驗證。 #### before:*date* 待驗證字段的值對應的日期必須在給定的日期之前。日期將會傳遞給 PHP 函數`strtotime`。此外,與[`after`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-after)規則一致,可以將另外一個待驗證的字段作為`date`的值。 #### before\_or\_equal:*date* 驗證字段必須是在給定日期之前或與之相同的日期。這個日期值將會被傳遞給 PHP 的`strtotime`函數來計算。除此之外,像[`after`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-after)規則一樣,驗證中另一個字段的名稱可以作為值傳遞給`date`。 #### between:*min*,*max* 驗證字段的大小必須在給定的 min 和 max 之間。字符串、數字、數組和文件的計算方式都使用[`size`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-size)方法。 #### boolean 驗證的字段必須可以轉換為 Boolean 類型。 可接受的輸入為`true`,`false`,`1`,`0`,`"1"`和`"0"`。 #### confirmed 驗證字段必須具有匹配字段`foo_confirmation`。例如,驗證字段為`password`,輸入中必須存在與之匹配的`password_confirmation`字段。 #### date 根據 PHP`strtotime`函數,驗證的字段必須是有效的日期。 #### date\_equals:date 驗證字段必須等于給定日期。日期將傳遞到 PHP`strtotime`函數。 #### date\_format:*format* 驗證字段必須匹配給定的日期格式。當驗證某個字段的時候,你應該 只使用`date`或者`date_format`,而不是同時使用。此驗證規則支持 PHP 所有的[DateTime](https://www.php.net/manual/en/class.datetime.php)類。 #### different:*field* 驗證的字段值必須與字段*field*的值不同。 #### digits:*value* 驗證的字段必須為`numeric`,并且必須具有確切長度 \_value\_。 #### digits\_between:*min*,*max* 驗證中的字段必須為`numeric`,并且長度必須在給定的*min*和*max*之間。 #### dimensions 驗證的文件必須是圖片并且圖片比例必須符合規則: ~~~php 'avatar' => 'dimensions:min_width=100,min_height=200' ~~~ 可用的規則為:*min\_width*,*max\_width*,*min\_height*,*max\_height*,*width*,*height*,*ratio*. *ratio*約束應該表示為寬度除以高度。 這可以通過像`3/2`這樣的語句或像`1.5`這樣的`float`來指定:: ~~~php 'avatar' => 'dimensions:ratio=3/2' ~~~ 由于此規則需要多個參數,因此你可以`Rule::dimensions`方法來構造可讀性高的規則: ~~~php use Illuminate\Validation\Rule; Validator::make($data, [ 'avatar' => [ 'required', Rule::dimensions()->maxWidth(1000)->maxHeight(500)->ratio(3 / 2), ], ]); ~~~ #### distinct 驗證數組時,指定的字段不能有任何重復值。 ~~~php 'foo.*.id' => 'distinct' ~~~ #### email 驗證的字段必須符合`e-mail`地址格式。當前版本,此種驗證規則由[`egulias/email-validator`](https://github.com/egulias/EmailValidator)提供支持。默認使用 RFCValidation 驗證樣式,但你也可以使其他驗證樣式: ~~~php 'email' => 'email:rfc,dns' ~~~ 例子使用`RFCValidation`和`DNSCheckValidation`驗證樣式。所有可用驗證樣式列表: * `rfc`:`RFCValidation` * `strict`:`NoRFCWarningsValidation` * `dns`:`DNSCheckValidation` * `spoof`:`SpoofCheckValidation` * `filter`:`FilterEmailValidation` 當下版本`filter`驗證規則使用 PHP 的`filter_var`方法進行驗證,在 5.8 版本接入 Laravel 。`dns`和`spoof`驗證器需要 PHP 的`intl`擴展。 #### ends\_with:*foo*,*bar*,… 驗證的字段必須以給定的值之一結尾。 #### exclude\_if:*anotherfield*,*value* 如果\_anotherfield\_字段等于\_value\_,驗證下的字段將被`validate`和`validated`方法返回的請求數據排除。 #### exclude\_unless:*anotherfield*,*value* 驗證下的字段將被`validate`和`validated`方法返回的請求數據排除,除非*anotherfield*的字段等于*value*。 #### exists:*table*,*column* 驗證的字段必須存在于給定的數據庫表中。 #### Exists 規則的基本用法 ~~~php 'state' => 'exists:states' ~~~ 如果未指定`column`選項,則將使用字段名稱。 #### 指定列名 ~~~php 'state' => 'exists:states,abbreviation' ~~~ 如果你需要指定`exists`方法用來查詢的數據庫。你可以通過使用「點」語法將數據庫的名稱添加到數據表前面來實現這個目的: ~~~php 'email' => 'exists:connection.staff,email' ~~~ 你也可以使用關聯模型來指定表名。 ~~~php 'user_id' => 'exists:App\Models\User,id' ~~~ 如果要自定義驗證規則執行的查詢,可以使用`Rule`類來定義規則。在這個例子中,我們使用數組指定驗證規則,而不是使用`|`字符來分隔它們: ~~~php use Illuminate\Validation\Rule; Validator::make($data, [ 'email' => [ 'required', Rule::exists('staff')->where(function ($query) { $query->where('account_id', 1); }), ], ]); ~~~ #### file 驗證的字段必須是成功上傳的文件。 #### filled 驗證的字段在存在時不能為空。 #### gt:*field* 驗證字段必須大于給定的 \_field\_。兩個字段必須是相同的類型。字符串、數字、數組和文件都使用[`size`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-size)進行相同的評估。 #### gte:*field* 驗證字段必須大于或等于給定的*field*。兩個字段必須是相同的類型。字符串、數字、數組和文件都使用[`size`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-size)進行相同的評估。 #### image 驗證的文件必須是圖片 (jpeg, png, bmp, gif, svg, or webp) #### in:*foo*,*bar*,… 驗證字段必須包含在給定的值列表中。由于此規則通常要求您`implode`數組,因此可以使用`Rule::in`方法流暢地構造規則: ~~~php use Illuminate\Validation\Rule; Validator::make($data, [ 'zones' => [ 'required', Rule::in(['first-zone', 'second-zone']), ], ]); ~~~ #### in\_array:*anotherfield*.\* 驗證的字段必須存在于另一個字段*anotherfield*的值中。 #### integer 驗證的字段必須是整數。 > 注意:此種驗證規則不是驗證數據是 「integer」 類型,僅驗證字符串或數值包含一個「integer」。 #### ip 驗證的字段必須是 IP 地址。 #### ipv4 驗證的字段必須是 IPv4 地址。 #### ipv6 驗證的字段必須是 IPv6 地址。 #### json 驗證的字段必須是有效的 JSON 字符串。 #### lt:*field* 驗證的字段必須小于給定的字段。這兩個字段必須是相同的類型。字符串、數值、數組和文件大小的計算方式與[`size`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-size)方法進行評估。 #### lte:*field* 驗證中的字段必須小于或等于給定的 字段 。這兩個字段必須是相同的類型。字符串、數值、數組和文件大小的計算方式與[`size`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-size)方法進行評估。 #### max:*value* 驗證中的字段必須小于或等于`value`。字符串、數字、數組或是文件大小的計算方式都用[`size`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-size)規則。 #### mimetypes:*text/plain*,… 驗證的文件必須具備與列出的其中一個擴展相匹配的 MIME 類型: ~~~php 'video' => 'mimetypes:video/avi,video/mpeg,video/quicktime' ~~~ 為了確定上傳文件的 MIME,框架將會讀取文件,然后自動推測文件 MIME 類型,這可能與客戶端提供的 MIME 類型不一致 。 #### mimes:*foo*,*bar*,… 驗證的文件必須具有與列出的其中一個擴展名相對應的 MIME 類型。 #### MIME 規則基本用法 ~~~php 'photo' => 'mimes:jpeg,bmp,png' ~~~ 即使你可能只需要驗證指定擴展名,但此規則實際上會去驗證文件的 MIME 類型,其通過讀取文件內容來推測它的 MIME 類型。 可以在以下鏈接中找到完整的 MIME 類型列表及相對應的擴展名:[svn.apache.org/repos/asf/httpd/htt...](https://svn.apache.org/repos/asf/httpd/httpd/trunk/docs/conf/mime.types) #### min:*value* 驗證字段必須具有最小值。 字符串,數值,數組,文件大小的計算方式都與[`size`](https://learnku.com/docs/laravel/8.x/validation/9374#rule-size)規則一致. #### not\_in:*foo*,*bar*,… 驗證字段不能包含在給定的值的列表中。 使用`Rule::notIn`方法可以更流暢的構建這個規則: ~~~php use Illuminate\Validation\Rule; Validator::make($data, [ 'toppings' => [ 'required', Rule::notIn(['sprinkles', 'cherries']), ], ]); ~~~ #### not\_regex:*pattern* 驗證字段必須與給定的正則表達式不匹配。 驗證時,這個規則使用 PHP`preg_match`函數。指定的模式應遵循`preg_match`所需的相同格式,也包括有效的分隔符。 例如:`'email' => 'not_regex:/^.+$/i'`。 \*\*注意:\*\*當使用`regex`/`not_regex`模式時, 可能需要在數組中指定規則,而不是使用`|`分隔符 ,特別是在正則表達式包含`|`字符 的情況下。 #### nullable 驗證字段可以為`null`。這在驗證基本數據類型時特別有用,例如可以包含空值的字符串和整數。 #### numeric 驗證字段必須為數值。 #### password 驗證字段必須與當前登錄用戶的密碼相同。你可以通過傳入第一個參數來指定身份驗證看守器(Authentication Guard)。 ~~~php 'password' => 'password:api' ~~~ #### present 驗證字段必須存在于輸入數據中,但可以為空。 #### regex:*pattern* 驗證字段必須與給定的正則表達式匹配。 驗證時,這個規則使用 PHP 的`preg_match`函數。 指定的模式應遵循`preg_match`所需的相同格式,也包括有效的分隔符。 例如:`'email' => 'not_regex:/^.+$/i'`。 \*\*注意:\*\*當使用`regex`/`not_regex`模式時, 可能需要在數組中指定規則,而不是使用`|`分隔符 ,特別是在正則表達式包含`|`字符 的情況下。 #### required 驗證的字段必須存在于輸入數據中,而不是空。如果滿足以下條件之一,則字段被視為「空」: * 值為`null`。 * 值為空字符串。 * 值為空數組或空`Countable`對象。 * 值為無路徑的上傳文件。 #### required\_if:*anotherfield*,*value*,… 如果其它字段`_anotherfield_`為任一值(`_value1_`或`_value2_`或`_value3_`等,也可只有一個`_value1_`) ,則此驗證字段必須存在且不為空。 如果您需要構造更復雜的條件`required_if`規則, 您可以使用`Rule::requiredIf`方法。這個方法可以接受一個布爾值或是一個閉包函數,當傳遞閉包函數時,閉包函數應該返回`true`或`false`,以表明是否需要驗證此字段: ~~~php use Illuminate\Validation\Rule; Validator::make($request->all(), [ 'role_id' => Rule::requiredIf($request->user()->is_admin), ]); Validator::make($request->all(), [ 'role_id' => Rule::requiredIf(function () use ($request) { return $request->user()->is_admin; }), ]); ~~~ #### required\_unless:*anotherfield*,*value*,… 如果其它字段`_anotherfield_`不等于任一值`_value_`,則此驗證字段必須存在且不為空。 #### required\_with:*foo*,*bar*,… 在其他任一指定字段出現時,驗證的字段才必須存在且不為空。 #### required\_with\_all:*foo*,*bar*,… 只有在其他指定字段全部出現時,驗證的字段才必須存在且不為空。 #### required\_without:*foo*,*bar*,… 在其他指定任一字段不出現時,驗證的字段才必須存在且不為空。 #### required\_without\_all:*foo*,*bar*,… 只有在其他指定字段全部不出現時,驗證的字段才必須存在且不為空。 #### same:*field* 驗證字段的值必須與給定字段的值相同。 #### size:*value* 驗證字段必須與給定值的大小一致。對于字符串,value 對應字符數。對于數字,value 對應給定的整數值(attribute 必須有`numeric`或者`integer`規則)。對于數組,size 對應數組的`count`值。對于文件,size 對應文件大小(單位 kB)。讓我們來看幾個例子: ~~~php // 驗證字符串長度是否為 12... 'title' => 'size:12'; // 驗證數字是否為 10... 'seats' => 'integer|size:10'; // 驗證數組的長度(擁有的元素)是否為 5... 'tags' => 'array|size:5'; // 驗證上傳的文件是否為 512 kB... 'image' => 'file|size:512'; ~~~ #### starts\_with:*foo*,*bar*,… 驗證字段必須以給定值之一開頭。 #### string 驗證字段必須是一個字符串。如果允許這個字段為`null`,需要給這個字段分配`nullable`規則。 #### timezone 驗證字段必須為符合 PHP 函數`timezone_identifiers_list`所定義的有效時區標識。 #### unique:*table*,*column*,*except*,*idColumn* 驗證字段在給定的數據庫表中必須是唯一的。 **指定自定義數據表 / 列名:** 除直接指定表名外,你也可以指定 Eloquent 模型。 ~~~php 'email' => 'unique:App\Models\User,email_address' ~~~ `column`選項可用于指定相應數據庫列的字段。 如果未指定`column`選項,則使用字段本身名稱。 ~~~php 'email' => 'unique:users,email_address' ~~~ **自定義數據庫連接** 有時,你可能需要為驗證器創建的數據庫查詢設置自定義連接。上面的例子中,將`unique:users`設置為驗證規則,等于使用默認數據庫連接來查詢數據庫。如果要對其進行修改,請使用「點」語法來指定連接和表名: ~~~php 'email' => 'unique:connection.users,email_address' ~~~ **強制 Unique 規則忽略指定 ID:** 有時,你可能希望在進行字段唯一性驗證時忽略指定 ID 。例如, 在「更新個人資料」頁面會包含用戶名、郵箱和地點。這時你會想要驗證更新的 E-mail 值是否唯一。如果用戶僅更改了用戶名字段而沒有改 E-mail 字段,就不需要拋出驗證錯誤,因為此用戶已經是這個 E-mail 的擁有者了。 使用`Rule`類定義規則來指示驗證器忽略用戶的 ID 。這個例子中通過數組來指定驗證規則,而不是使用`|`字符來分隔: ~~~php use Illuminate\Validation\Rule; Validator::make($data, [ 'email' => [ 'required', Rule::unique('users')->ignore($user->id), ], ]); ~~~ > 注意:您永遠不應該將任何用戶控制的請求輸入傳遞給`ignore`方法。您應該只通過`Eloquent`模型的實例來傳遞系統生成的唯一 ID,例如自動遞增 ID 或 UUID 。否則,您的應用程序將更容易受到 SQL 注入攻擊。 您可以傳遞整個模型實例,而不是將模型實例的主鍵值 傳遞給`ignore`方法。 Laravel 將自動從模型實例中獲取主鍵值: ~~~php Rule::unique('users')->ignore($user) ~~~ 如果您的數據表使用的主鍵名稱不是`id`,那就在調用`ignore`方法時指定字段的名稱: ~~~php Rule::unique('users')->ignore($user->id, 'user_id') ~~~ 默認情況下,`unique`規則將檢查與要驗證字段名稱相匹配的列的唯一性。 但是,您可以傳遞一個不同的列名作為`unique`方法的第二個參數: ~~~php Rule::unique('users', 'email_address')->ignore($user->id), ~~~ **增加額外的 Where 語句:** 您也可以通過`where`方法指定額外的查詢條件。例如, 我們添加`account_id`為`1`的約束: ~~~php 'email' => Rule::unique('users')->where(function ($query) { return $query->where('account_id', 1); }) ~~~ #### url 驗證的字段必須是有效的 URL。 #### uuid 驗證字段必須是有效的 RFC 4122(版本 1,3,4 或 5)通用唯一標識符(UUID)。
                  <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>

                              哎呀哎呀视频在线观看