Charset
Дата обновления перевода 2024-07-25
Charset
7.1
Ограничение Charset
было представлено в Symfony 7.1.
Валидирует, что строка (или объект, реализующий интерфейс PHP Stringable
)
зашифрован в заданном наборе символов.
??????????? ? | ???????? ??? ?????? |
????? | Charset |
????????? | CharsetValidator |
Базовое применение
Если вы хотите гарантировать, что свойство content` класса
FileDTO``
использует UTF-8, вы можете сделать следующее:
1 2 3 4 5 6 7 8 9 10
// src/Entity/FileDTO.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class FileDTO
{
#[Assert\Charset('UTF-8')]
protected string $content;
}
Опции
encodings
тип: array
| string
по умолчанию: []
Кодировка или набор кодировок для проверки. Если вы передадите массив кодировок, валидатор проверит, зашифровано ли значение в любой из этих кодировок. Эта опция принимает любое значение, которое может быть передано в mb_detect_encoding.
groups
type: array
| string
default: null
It defines the validation group or groups of this constraint. Read more about validation groups.
message
тип: string
по умолчанию: Обнаруженная кодировка символа невалидна ({{ detected }}). Разрешенные кодировки {{ encodings }}.
Это сообщение, которое будет показано, если значение не соответствует ни одной из принятых кодировок.
В этом сообщении можно использовать следующие параметры:
???????? | ???????? |
---|---|
{{ detected }} |
???????????? ????????? |
{{ encodings }} |
???????? ????????? |
Дата обновления перевода 2024-07-25
payload
тип: mixed
по умолчанию: null
Эта опция может быть использована, чтобы добавить к ограничению произвольные данные, относящиеся к домену. Сконфигурированная нагрузка не используется компонентом Валидатор, но его обработка полностью зависит от вас.
Например, вы можете захотеть исользовать несколько уровней ошибок, чтобы представить неудачные ограничения в фронт-энде по-разному, в зависимости от степени сложности ошибки.