Use setTimeZone if this method exists.

The php version is not a critical factor to choose the method, but we have to use setTimeZone, if it exists.
This commit is contained in:
dropfen 2013-09-12 23:36:40 +02:00 committed by Fabien Potencier
parent 7d7b583851
commit 0d6af5cd90
1 changed files with 4 additions and 2 deletions

View File

@ -267,8 +267,10 @@ class DateType extends AbstractType
{
$pattern = $formatter->getPattern();
$timezone = $formatter->getTimezoneId();
// Use it, if exists.
$setTimeZone = method_exists($formatter, 'setTimeZone');
if (version_compare(\PHP_VERSION, '5.5.0-dev', '>=')) {
if ($setTimeZone) {
$formatter->setTimeZone('UTC');
} else {
$formatter->setTimeZoneId('UTC');
@ -286,7 +288,7 @@ class DateType extends AbstractType
$formatter->setPattern($pattern);
}
if (version_compare(\PHP_VERSION, '5.5.0-dev', '>=')) {
if ($setTimeZone) {
$formatter->setTimeZone($timezone);
} else {
$formatter->setTimeZoneId($timezone);