Список ограничений Symfony охватывает большинство общих требований к проверке веб-сайтов и приложений. Тем не менее, продолжаем прислушиваться к вашим отзывам и добавляем новые ограничения, предложенные сообществом.
В Symfony 4.3 мы добавили новое ограничение часового пояса, чтобы проверить, является ли данное значение одним из действительных часовых поясов, определенных PHP (например, Africa/Nairobi).
// src/Entity/UserSettings.php
namespace App\Entity;
use Symfony\Component\Validator\Constraints as Assert;
class UserSettings
{
/**
* @Assert\Timezone
*/
protected $timezone;
}
В дополнение к общим опциям, определяемым большинством ограничений (groups
, message
, payload
), это ограничение определяет две дополнительные опции: zone
(для ограничения допустимых часовых поясов в географической зоне, такой как Азия или Австралия) и countryCode
(для ограничения допустимых часовых поясов для одного страна):
// Consider valid only the timezones from countries in America continent
/** @Assert\Timezone(zone=\DateTimeZone::AMERICA) */
protected $timezone;
// Consider valid only the Chinese timezones
/** @Assert\Timezone(zone=\DateTimeZone::PER_COUNTRY, countryCode="CN") */
protected $timezone;