日付の表示形式に依存します。
静的な日付形式
すべてのロケールで同じである静的フォーマット(たとえば、AtomフィードのISO 8601)を表示する場合は、Twigのdate
フィルターを使用する必要があります。
{{ game.gameDate|date('Y-m-d\\TH:i:sP') }}
常に次の形式で日時を返します。
2014-05-02T08:55:41Z
date
フィルターが受け入れるフォーマット文字列は、PHPのdate()
関数で使用するものと同じです。(唯一の違いは、私の知る限り、PHP date()
関数で使用できる定義済み定数を使用できないことです)
ローカライズされた日付(および時刻)
ただし、ブラウザでレンダリングする必要があるため、ユーザーの言語と場所に合わせてローカライズされた、人間が読める形式で表示することをお勧めします。自分でローカライズを行う代わりに、これにIntl拡張機能を使用できます(これはPHPのIntlDateFormatterを利用します)。localizeddate
ローカライズされた形式を使用して日付と時刻を出力するフィルターを提供します。
localizeddate( date_format, time_format [, locale ] )
の引数localizeddate
:
date_format
:書式文字列の 1つ(下記参照)
time_format
:書式文字列の 1つ(下記参照)
locale
:(オプション)これを使用して、構成されたロケールをオーバーライドします。デフォルトのロケールを使用するには、この引数を省略します。デフォルトのロケールは、Symfonyの構成で構成できます。
(もっとあります、可能な引数の完全なリストについてはドキュメントを参照してください)
用date_format
してtime_format
、あなたは、次のいずれかの文字列を使用することができます。
'none'
この要素を含めたくない場合
'short'
最も省略されたスタイル(英語のロケールでは12/13/52または3:30 pm)
'medium'
ミディアムスタイル(1952年1月12日、英語ロケール)
'long'
ロングスタイルの場合(1952年1月12日、または英語ロケールでは午後3時30分32秒)
'full'
完全に指定されたスタイル(1952年4月12日火曜日、または英語ロケールでは午後3時30分42秒PST)
例
したがって、たとえば、日付をと同じ形式で表示する場合February 6, 2014 at 10:52 AM
は、Twigテンプレートで次の行を使用します。
{{ game.gameDate|localizeddate('long', 'short') }}
ただし、別のロケールを使用すると、結果はそのロケールにローカライズされます。
6 februari 2014 10:52
以下のためのnl
ロケール。
6 février 2014 10:52
以下のためのfr
ロケール。
6. Februar 2014 10:52
以下のためのde
ロケール。等
ご覧のとおり、localizeddate
では月の名前が翻訳されるだけでなく、ローカル表記も使用されます。英語表記は月の後に日付を置き、オランダ語、フランス語、ドイツ語表記は月の前にそれを置きます。英語とドイツ語の月の名前は大文字で始まりますが、オランダ語とフランス語の月の名前は小文字です。ドイツの日付にはドットが追加されています。
インストール/ロケールの設定
Intl拡張機能のインストール手順は、この別の回答にあります。
{{ game.gameDate|date('Y-m-d H:i:s') }}
日付と時刻。数分間キャラクターを見つけるのに問題がありました。