跳到內容

時間

編輯此頁面

驗證值是否為有效的時間,表示字串(或可轉換為字串的物件),且遵循有效的 H:i:s 格式 (例如 '16:27:36')。

適用於 屬性或方法
類別 時間
驗證器 TimeValidator

基本用法

假設您有一個 Event 類別,其中有一個 startsAt 欄位,代表事件開始的當天時間

1
2
3
4
5
6
7
8
9
10
11
12
13
// src/Entity/Event.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class Event
{
    /**
     * @var string A "H:i:s" formatted value
     */
    #[Assert\Time]
    protected string $startsAt;
}

注意

如同大多數其他約束條件,null 和空字串會被視為有效值。這是為了允許它們作為可選值。如果該值是強制性的,常見的解決方案是將此約束條件與 NotBlank 結合使用。

選項

groups

類型array | string 預設值null

它定義了此約束條件的驗證群組。閱讀更多關於驗證群組的資訊。

message

類型string 預設值此值不是有效的時間。

如果底層資料不是有效的時間,則會顯示此訊息。

您可以在此訊息中使用以下參數

參數 描述
{{ value }} 目前(無效)的值
{{ label }} 對應的表單欄位標籤

withSeconds

類型boolean 預設值true

此選項允許您指定時間是否應包含秒數。

選項 模式 正確的值 不正確的值
true /^(\d{2}):(\d{2}):(\d{2})$/ 12:00:00 12:00
false /^(\d{2}):(\d{2})$/ 12:00 12:00:00

payload

類型mixed 預設值null

此選項可用於將任意特定領域的資料附加到約束條件。Validator 元件不使用已設定的 payload,但其處理完全取決於您。

例如,您可能想要使用多個錯誤等級,以便根據錯誤的嚴重性在前端以不同的方式呈現失敗的約束條件。

本作品,包括程式碼範例,依據 Creative Commons BY-SA 3.0 授權條款授權。
TOC
    版本