WordCount
Дата обновления перевода 2025-02-05
WordCount
7.2
Ограничение WordCount
было представлено в Symfony 7.2.
Валидирует, что строка (или объект, реализующий интерфейс PHP Stringable
)
содержит заданное количество слов. Внутренне это ограничение использует класс
IntlBreakIterator для подсчета слов в зависимости от вашей локали.
??????????? ? | ???????? ??? ?????? |
????? | WordCount |
????????? | WordCountValidator |
Базовое применение
Если вы хотите гарантировать, что свойство content
класса BlogPostDTO
содержит от 100 до 200 слов, вы можете сделать следующее:
1 2 3 4 5 6 7 8 9 10
// src/Entity/BlogPostDTO.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class BlogPostDTO
{
#[Assert\WordCount(min: 100, max: 200)]
protected string $content;
}
Опции
max
тип: integer
по умолчанию: null
Максимальное количество слов, которое должно содержать значение.
locale
тип: string
по умолчанию: null
Локаль, которую следует использовать для подсчета слов с помощью класса
IntlBreakIterator. Значение по умолчанию (null
) означает, что ограничение
использует текущую локаль пользователя.
Дата обновления перевода 2023-09-24
groups
тип: array
| string
по умолчанию: null
Определяет группу или группы валидации ограничений. Прочитайте больше о группах валидации.
minMessage
тип: string
по умолчанию: Это значение слишком короткое. Должно содержать хотя бы одно слово.| Это значение слишком короткое. Должно содержать как минимум {{ min }} слов.
Это сообщение будет показано, если значение не содержит по крайней мере минимального количества слов. Вы можете использовать следующие параметры в этом сообщении:
???????? | ???????? |
---|---|
{{ min }} |
??????????? ?????????? ???? |
{{ count }} |
???????? ?????????? ???? |
maxMessage
тип: string
по умолчанию: Это значение слишком длинное. Должно содержать одно слово.| Это значение слишком длинное. Должно содержать {{ max }} слов или меньше.
Это сообщение будет показано, если значение содержит больше чем максимальное количество слов. Вы можете использовать следующие параметры в этом сообщении:
???????? | ???????? |
---|---|
{{ max }} |
???????????? ?????????? ???? |
{{ count }} |
???????? ?????????? ???? |
Дата обновления перевода 2025-02-05
payload
тип: mixed
по умолчанию: null
Эта опция может быть использована, чтобы добавить к ограничению произвольные данные, относящиеся к домену. Сконфигурированная нагрузка не используется компонентом Валидатор, но его обработка полностью зависит от вас.
Например, вы можете захотеть исользовать несколько уровней ошибок, чтобы представить неудачные ограничения в фронт-энде по-разному, в зависимости от степени сложности ошибки.