Tarihin gösterilmesini istediğiniz biçime bağlıdır.
Statik tarih biçimi
Tüm yerel ayarlar için aynı olan statik bir biçim görüntülemek istiyorsanız (örneğin , Atom yayını için ISO 8601 ), Twig'in date
filtresini kullanmalısınız :
{{ game.gameDate|date('Y-m-d\\TH:i:sP') }}
Hangisi her zaman bir tarih saatini aşağıdaki biçimde döndürür:
2014-05-02T08: 55: 41Z
date
Filtre tarafından kabul edilen biçim dizeleri PHP'nin date()
işlevi için kullandığınız dizelerle aynıdır . (tek fark, bildiğim kadarıyla PHP date()
işlevinde kullanılabilen önceden tanımlanmış sabitleri kullanamayacağınızdır )
Yerelleştirilmiş tarihler (ve saatler)
Bununla birlikte, tarayıcıda oluşturmak istediğiniz için, muhtemelen kullanıcının dili ve konumu için yerelleştirilmiş, insan tarafından okunabilir bir biçimde göstermek istersiniz. Yerelleştirmeyi kendiniz yapmak yerine, bunun için Intl Uzantısını kullanabilirsiniz (PHP'nin IntlDateFormatter'ı kullanır ). localizeddate
Yerelleştirilmiş bir format kullanarak tarih ve saati çıktılayacak bir filtre sağlar .
localizeddate( date_format, time_format [, locale ] )
Bağımsız değişkenler localizeddate
:
date_format
: Biçim dizelerinden biri (aşağıya bakın)
time_format
: Biçim dizelerinden biri (aşağıya bakın)
locale
: (isteğe bağlı) Yapılandırılmış yerel ayarı geçersiz kılmak için bunu kullanın. Symfony'nin yapılandırmasında yapılandırılabilen varsayılan yerel ayarı kullanmak için bu bağımsız değişkeni dışarıda bırakın.
(dahası da vardır, olası argümanların tam listesi için dokümanlara bakın )
İçin date_format
ve time_format
aşağıdaki dizelerden birini kullanabilirsiniz:
'none'
bu öğeyi eklemek istemiyorsanız
'short'
en kısaltılmış stil için (İngilizce yerel ayarlarda 12/13/52 veya 15:30)
'medium'
orta stil için (İngilizce yerel ayarda 12 Ocak 1952)
'long'
uzun stil için (İngilizce yerel ayarlarda 12 Ocak 1952 veya 15:30:32)
'full'
tamamen belirtilen stil için (İngilizce yerel ayarlarda 12 Nisan 1952 Salı veya 15:30:42 pm PST)
Misal
Örneğin, tarihi, eşdeğer bir biçimde görüntülemek istiyorsanız February 6, 2014 at 10:52 AM
, Twig şablonunuzda aşağıdaki satırı kullanın:
{{ game.gameDate|localizeddate('long', 'short') }}
Ancak, farklı bir yerel ayar kullanırsanız, sonuç bu yerel ayar için yerelleştirilir:
6 februari 2014 10:52
için nl
yerel ayar;
6 février 2014 10:52
için fr
yerel ayar;
6. Februar 2014 10:52
için de
yerel ayar; vb.
Gördüğün gibi, localizeddate
sadece ay adlarını çevirmekle kalmaz, aynı zamanda yerel gösterimleri de kullanır. İngilizce gösterimi aydan sonra, Hollandaca, Fransızca ve Almanca gösterimlerin aydan önce koyulduğu tarihi belirtir. İngilizce ve Almanca ay isimleri büyük harfle başlarken, Hollandaca ve Fransızca ay isimleri küçük harftir. Ve Alman tarihlerinde bir nokta var.
Yerel ayarı yükleme / ayarlama
Intl uzantısı için kurulum talimatları bu ayrı yanıtta bulunabilir .
{{ game.gameDate|date('Y-m-d H:i:s') }}
tarih ve saat için. Dakikalarca karakter bulmakta sorun yaşadım.