WordCount
Дата обновления перевода 2025-07-27
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-07-27
payload
тип: mixed по умолчанию: null
Эта опция может быть использована, чтобы добавить к ограничению произвольные данные, относящиеся к домену. Сконфигурированная нагрузка не используется компонентом Валидатор, но его обработка полностью зависит от вас.
Например, вы можете захотеть исользовать несколько уровней ошибок, чтобы представить неудачные ограничения в фронт-энде по-разному, в зависимости от степени сложности ошибки.