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 тижні.

Опції

min

тип: string за замовчуванням: null

Мінімальний номер тижня, якому має відповідати значення.

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, але його обробка повністю залежить від вас.

Наприклад, ви можете захотіти використати декілька рівнів помилок, щоб представити неуспішні обмеження по-різному у фронтенді, залежно від серйозності помилки.