You are here

public function DateTimePlus::format in Service Container 7.2

Same name and namespace in other branches
  1. 7 lib/Drupal/Component/Datetime/DateTimePlus.php \Drupal\Component\Datetime\DateTimePlus::format()

Formats the date for display.

Parameters

string $format: A format string using either PHP's date().

array $settings:

  • timezone: (optional) String timezone name. Defaults to the timezone of the date object.

Return value

string The formatted value of the date.

1 call to DateTimePlus::format()
DateTimePlus::render in lib/Drupal/Component/Datetime/DateTimePlus.php
Renders the timezone name.

File

lib/Drupal/Component/Datetime/DateTimePlus.php, line 576
Contains \Drupal\Component\Datetime\DateTimePlus.

Class

DateTimePlus
Wraps DateTime().

Namespace

Drupal\Component\Datetime

Code

public function format($format, $settings = array()) {

  // If there were construction errors, we can't format the date.
  if ($this
    ->hasErrors()) {
    return;
  }

  // Format the date and catch errors.
  try {

    // Clone the date/time object so we can change the time zone without
    // disturbing the value stored in the object.
    $dateTimeObject = clone $this->dateTimeObject;
    if (isset($settings['timezone'])) {
      $dateTimeObject
        ->setTimezone(new \DateTimeZone($settings['timezone']));
    }
    $value = $dateTimeObject
      ->format($format);
  } catch (\Exception $e) {
    $this->errors[] = $e
      ->getMessage();
  }
  return $value;
}