Symfony News

New in Symfony 4.3: Timezone validator

Javier Spagnoletti Hugo Hamon

Contributed by
Javier Spagnoletti, Hugo Hamon
in #30900.

The list of Symfony constraints covers most of the common validation needs for web sites and applications. However, we keep listening to your feedback and adding new constraints proposed by the community.

In Symfony 4.3, we've added a new Timezone constraint to check that the given value is one of the valid timezones defined by PHP (e.g. Africa/Nairobi).

 1
 2
 3
 4
 5
 6
 7
 8
 9
10
11
12
// src/Entity/UserSettings.php
namespace App\Entity;

use Symfony\Component\Validator\Constraints as Assert;

class UserSettings
{
    /**
     * @Assert\Timezone
     */
    protected $timezone;
}

In addition to the common options defined by most constraints (groups, message, payload) this constraint defines two additional options: zone (to restrict valid timezones to a geographical zone such as Asia or Australia) and countryCode (to restrict valid timezones to a single country):

1
2
3
4
5
6
7
8
9
// 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;

Be trained by Symfony experts - 2019-04-15 Clichy - 2019-04-15 Clichy - 2019-04-17 Clichy


About us

What a Symfony developer should know about the framework: News, Jobs, Tweets, Events, Videos,...

Resources

Find us on Twitter

Find us on Facebook