Symfony\Component\Form\Extension\Core\DataTransformer\DateTimeToLocalizedStringTransformer::transform PHP Method

transform() public method

Transforms a normalized date into a localized date string/array.
public transform ( DateTime $dateTime ) : string | array
$dateTime DateTime Normalized date.
return string | array Localized date string/array.
    public function transform($dateTime)
    {
        if (null === $dateTime) {
            return '';
        }

        if (!$dateTime instanceof \DateTime) {
            throw new UnexpectedTypeException($dateTime, '\DateTime');
        }

        // convert time to UTC before passing it to the formatter
        $dateTime = clone $dateTime;
        if ('UTC' !== $this->inputTimezone) {
            $dateTime->setTimezone(new \DateTimeZone('UTC'));
        }

        $value = $this->getIntlDateFormatter()->format((int) $dateTime->format('U'));

        if (intl_get_error_code() != 0) {
            throw new TransformationFailedException(intl_get_error_message());
        }

        return $value;
    }

Usage Example

 /**
  * @param DateRange $dateRange
  *
  * @return string
  */
 public function transform($dateRange)
 {
     if (null === $dateRange) {
         return '';
     }
     if (!$dateRange instanceof DateRange) {
         throw new TransformationFailedException('Expected a Vudaltsov\\DateRangeBundle\\DateRange.');
     }
     $start = $this->dateTimeTransformer->transform($dateRange->getStart());
     $end = $this->dateTimeTransformer->transform($dateRange->getEnd());
     return $start . $this->separator . $end;
 }
All Usage Examples Of Symfony\Component\Form\Extension\Core\DataTransformer\DateTimeToLocalizedStringTransformer::transform