CssColor
Дата оновлення перекладу 2023-09-25
CssColor
Валідує, що значення є валідним кольором CSS. Вихідне дані значення перетворюється на рядок перед валідацією.
?????????????? ?? | ??????????? ??? ?????? |
???? | CssColor |
????????? | CssColorValidator |
Базове застосування
У наступному прикладі, значення $defaultColor
має бути CSS кольором, визначеним
у будь-якому з валідних форматів CSS (наприклад, red
, #369
, hsla(0, 0%, 20%, 0.4)
);
$accentColor
має бути кольором CSS, визначеним у шістнадцятковому форматі; а
$currentColor
має бути кольором CSS, визначеним у будь-якому іменованому кольорі
CSS:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22
// src/Entity/Bulb.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class Bulb
{
#[Assert\CssColor]
protected string $defaultColor;
#[Assert\CssColor(
formats: Assert\CssColor::HEX_LONG,
message: 'The accent color must be a 6-character hexadecimal color.',
)]
protected string $accentColor;
#[Assert\CssColor(
formats: [Assert\CssColor::BASIC_NAMED_COLORS, Assert\CssColor::EXTENDED_NAMED_COLORS],
message: 'The color '{{ value }}' is not a valid CSS color name.',
)]
protected string $currentColor;
}
Дата оновлення перекладу 2022-12-20
Note
Як і в більшості інших обмежень, null
та порожні рядки вважаються валідними
значеннями. Це для того, щоб дозволити їм бути опціональними значеннями. Якщо
значення є обовʼязковим, розповсюдженим рішенням буде комбінація цього обмеження
з NotBlank.
Опції
Дата оновлення перекладу 2023-09-24
groups
тип: array
| string
за замовчуванням: null
Визначає групу або групи валідації обмеження. Прочитайте більше про групи валідації.
message
тип: string
за замовчуванням: Це значення не є валідним кольором CSS.
Це повідомлення відображується, якщо вихідні дані не є валідним кольором CSS color.
Ви можете використати наступні параметри у цьому повідомленні:
???????? | ???? |
---|---|
{{ value }} |
??????? (?????????) ???????? |
formats
тип: string
| array
За замовчуванням, це обмеження вважає валідним будь-який з багатьох способів визначення
кольорів CSS. Використайте опцію formats
, щоб обмежити, які формати CSS дозволено.
Ось доступні формати (які також визначені як PHP-константи, наприклад, Assert\CssColor::HEX_LONG
):
hex_long
hex_long_with_alpha
hex_short
hex_short_with_alpha
basic_named_colors
extended_named_colors
system_colors
keywords
rgb
rgba
hsl
hsla
hex_long
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS з 6 символів
(на додаток до початкового #
) та містяться у діапазоні: від 0
до 9
та
від A
до F
(нечутливі до регістру).
Приклади: #2F2F2F
, #2f2f2f
hex_long_with_alpha
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS з альфа
частиною з 8 символів (на додаток до початковго #
) та містяться у діапазоні:
від 0
до 9
та від A
до F
(нечутливі до регістру).
Приклади: #2F2F2F80
, #2f2f2f80
hex_short
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS суворо з
3 символів (на додаток до початкового #
) та містяться у діапазоні: від 0
до 9
та від A
до F
(нечутливі до регістру).
Приклади: #CCC
, #ccc
hex_short_with_alpha
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS з альфа
частиною суворо з 4 символів (на додаток до початковго #
) та містяться у
діапазоні: від 0
до 9
та від A
до F
(нечутливі до регістру).
Приклади: #CCC8
, #ccc8
basic_named_colors
Будь-які валідні імена кольорів, визначені у Списку базових іменованих кольорів W3C (нечутливі до регістру).
Приклади: black
, red
, green
extended_named_colors
Будь-які валідні імена кольорів, визначені у Розширеному списку іменованих кольорів W3C (нечутливі до регістру).
Приклади: aqua
, brown
, chocolate
system_colors
Будь-які валідні імена кольорів, визначені у Списку системних кольорів CSS WG (нечутливі до регістру).
Приклади: LinkText
, VisitedText
, ActiveText
, ButtonFace
, ButtonText
keywords
Будь-які валідні ключові слова, визначені у Списку ключових слів CSS WG (нечутливі до регістру).
Приклади: transparent
, currentColor
rgb
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS, який дотримується нотації RGB, з або без пробілів між значеннями.
Приклади: rgb(255, 255, 255)
, rgb(255,255,255)
rgba
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS з альфа частиною, яка дотримується нотації RGB, з або без пробілів між значеннями.
Приклади: rgba(255, 255, 255, 0.3)
, rgba(255,255,255,0.3)
hsl
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS, який дотримується нотації HSL, з або без пробілів між значеннями.
Приклади: hsl(0, 0%, 20%)
, hsl(0,0%,20%)
hsla
Регулярний вираз. Дозволяє всі значення, які представляють колір CSS з альфа частиною, яка дотримуєваться нотації HSLA, з або без пробілів між значеннями.
Приклади: hsla(0, 0%, 20%, 0.4)
, hsla(0,0%,20%,0.4)
Дата оновлення перекладу 2024-05-29
payload
тип: mixed
за замовчуванням: null
Ця опція може бути використана, щоб додати довільні дані, специфічні для домену, до обмеження. Сконфігуроване корисне навантаження не використовується компонентом Validator, але його обробка повністю залежить від вас.
Наприклад, ви можете захотіти використати декілька рівнів помилок, щоб представити неуспішні обмеження по-різному у фронтенді, залежно від серйозності помилки.