Geçerli projem için gereksinimlerimden biri, kullanıcının kendi hesabı için bir saat dilimi seçmesine izin vermek ve bu zaman dilimini tüm tarih/saat ile ilgili tüm özellikler için kullanmaktır. Tüm site. PHP'nin date_default_timezone_set()
Symfony2: Kullanıcı tanımlı bir saat dilimi ayarlanacağı yer
kullanarak varsayılan saat dilimini belirleme her yeni DateTime
- Geçiş:
Gördüğüm kadarıyla, ben iki seçeneğiniz vardır Date_default_timezone_set kullanmak için yol kullanmak gibi görünüyor, ama tam olarak nerede ayarlamalı emin değilim. Saat dilimi kullanıcıdan kullanıcıya farklı olacağından ve tüm site üzerinde DateTime kullanıldıklarından, tüm sayfaları etkileyeceği bir yere ayarlamanız gerekir.
Başarılı bir girişten sonra onu ayarlayan bir olay dinleyicisi yazabilir miyim? Bu yaklaşımı kullanırsam, tüm sayfalarda ayarlanacak mı yoksa yalnızca sayfa başına mı ayarlanacak?
Diğerlerinin buna nasıl yaklaşacağını öğrenmek isterim.
@elnur, benim sunucu "UTC" ve kullanıcı için "Amerika/Caracas" olarak ayarlandığını varsayalım. Çözümünüzle, bir kullanıcı bazı varlık alanında bir tarih bilgisini gönderdiğinde ne olur? Tarihsa, kullanıcı saat dilimi ile (kullanıcının girdiği değere göre hiçbir değişiklik olmadan) veya sunucu saat dilimi ile (değer UTC saatiyle eşleşecek şekilde değiştirilir) kaydedilecek mi? –
@David UTC tabanlı zamanları/tarihleri yalnızca veritabanınıza kaydetmelisiniz. Bu şekilde, kullanıcı için her zaman doğru şekilde biçimlendirebilirsiniz. – Luke