Week
Дата оновлення перекладу 2025-01-15
Week
7.2
Обмеження Week
було представлене в Symfony 7.2.
Валідує, що заданий рядок (або об'єкт, що реалізує PHP-інтерфейс Stringable
)
представляє валідний номер тижня згідно зі стандартом ISO-8601 (наприклад,2025-W01
).
?????????????? ?? | ??????????? ??? ?????? |
???? | Week |
????????? | WeekValidator |
Базове застосування
Якщо ви хочете переконатися, що властивість startWeek
класу OnlineCourse
була
між першим та двадцятим тижнем 2022 року, ви можете зробити наступне:
1 2 3 4 5 6 7 8 9 10
// src/Entity/OnlineCourse.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class OnlineCourse
{
#[Assert\Week(min: '2022-W01', max: '2022-W20')]
protected string $startWeek;
}
Це обмеження не тільки перевіряє відповідність значення патерну номерів тижнів,
але також перевіряє, що вказаний тиждень дійсно існує в календарі.
Відповідно до стандарту ISO-8601, рік може мати 52 або 53 тижні. Наприклад,
2022-W53
є невалідним, оскільки 2022 рік мав лише 52 тижні; але 2020-W53
є
валідний, оскільки 2020 рік мав 53 тижні.
Опції
max
тип: string
за замовчуванням: null
Максимальний номер тижня, якому має відповідати значення.
Дата оновлення перекладу 2023-09-24
groups
тип: array
| string
за замовчуванням: null
Визначає групу або групи валідації обмеження. Прочитайте більше про групи валідації.
invalidFormatMessage
тип: string
за замовчуванням: Це значення не відповідає валідному тижню у форматі ISO 8601.
Це повідомлення буде показано, якщо значення не відповідає формату тижня ISO 8601.
invalidWeekNumberMessage
тип: string
за замовчуванням: Тиждень "{{ value }}" не є валідним тижнем.
Це повідомлення буде показано, якщо значення не відповідає валідному номеру тижня.
Ви можете використовувати наступні параметри у цьому повідомленні:
???????? | ???? |
---|---|
{{ value }} |
????????, ??? ???? ???????? ????????? |
tooLowMessage
тип: string
за замовчуванням: Значення не повинно бути раніше тижня "{{ min }}".
Це повідомлення буде показано, якщо значення менше мінімального номеру тижня.
Ви можете використовувати наступні параметри у цьому повідомленні:
???????? | ???? |
---|---|
{{ min }} |
??????????? ????? ????? |
tooHighMessage
тип: string
за замовчуванням: Значення не повинно бути після тижня "{{ max }}".
Це повідомлення буде показано, якщо значення більше максимального номеру тижня.
Ви можете використовувати наступні параметри у цьому повідомленні:
???????? | ???? |
---|---|
{{ max }} |
???????????? ????? ????? |
Дата оновлення перекладу 2025-01-15
payload
тип: mixed
за замовчуванням: null
Ця опція може бути використана, щоб додати довільні дані, специфічні для домену, до обмеження. Сконфігуроване корисне навантаження не використовується компонентом Validator, але його обробка повністю залежить від вас.
Наприклад, ви можете захотіти використати декілька рівнів помилок, щоб представити неуспішні обмеження по-різному у фронтенді, залежно від серйозності помилки.