Formats a date, time, datetime value as localized string.


Syntax

format_datetime($datetime, $formatDate = 'medium', $formatTime = 'medium', $locale = null, $pattern = null): string

  • $datetime - int|string|null
    The number to format.
    Either as a string, e.g. syntax like: "Y-m-d", "Y-m-d H:i:s".
    Or as integer, as UNIX-Timestamp.

  • $formatDate
    Format of how to render the date-part. Supported formats are:
    • "none"
    • "short"
    • "medium"
    • "long"
    • "full"
    • "relative_short" - The same as "short", but dates for yesterday, today or tomorrow are written like that.
    • "relative_medium" - The same as "medium", but dates for yesterday, today or tomorrow are written like that.
    • "relative_long" - The same as "long", but dates for yesterday, today or tomorrow are written like that.
    • "relative_full" - The same as "full", but dates for yesterday, today or tomorrow are written like that.

  • $formatTime
    Format of how to render the time-part. Supported formats are:
    • "none"
    • "short" 
    • "medium"
    • "long" 
    • "full"

  • $locale
    If NULL the render-ENV's locale setting is used.

  • $pattern
    An optional pattern string to explicitly define the formatted output.

    See Syntax at: https://unicode-org.github.io/icu/userguide/format_parse/datetime/#datetime-format-syntax


Examples


{# Assuming render-ENV's locale is set to:  "de-DE". #}

{{ hublify.format_datetime('2021-12-31', 'medium', 'none') }}             => 31.12.2021

{{ hublify.format_datetime('2021-12-31 23:59:59', 'short', 'short') }}    => 31.12.21, 23:59

{{ hublify.format_datetime('2021-12-31 23:59:59', 'medium', 'medium') }}  => 31.12.2021, 23:59:59

{{ hublify.format_datetime('2021-12-31 23:59:59', 'long', 'long') }}      => 31. Dezember 2021 um 23:59:59 MEZ

{{ hublify.format_datetime('2021-12-31', 'full', 'none') }}               => Freitag, 31. Dezember 2021


// --- Custom Formatter String:

{{ hublify.format_datetime('2021-12-31', 'short', 'short', null, 'E, MMM') }}  
                                                                          => Fr., Dez.

{{ hublify.format_datetime('2021-12-31 23:59:59', 'short', 'short', null, 'E, d. LLL. yyyy - HH:mm') }}
                                                                          => Fr., 31. Dez. 2021 - 23:59