timezones()
kullanarak U(M|P)x
- değerlerinden biri için UTC ofsetini alabilirsiniz. Bu noktadan sonra
$offset = timezones('UP1'); // don't know the exact format returned but should be something like 1 or '+01:00'
, tek yolun ofset ve PHP diliminin arasına özel eşlemesi çeşit olduğunu düşünüyorum.
Etc/GMT(+|-)x
zaman dilimlerini kullanabilirsiniz, ancak bunların sorunu herhangi bir DST geçiş bilgisi içermemesidir.
Genel olarak sorun, UTC-ofsetlerinin aslında birçok farklı saat dilimi ile eşleşmesidir, örn. UP1
((UTC + 01:00) Berlin, Brüksel, Kopenhag, Madrid, Paris, Roma) örneğin Europe/Berlin
, Europe/Brussels
, Europe/Copenhagen
, Europe/Madrid
, Europe/Paris
, Europe/Rome
ama aynı zamanda Africa/Luanda
eşleştiren. Şu anda bu zaman dilimlerinin bazılarında meydana gelebilecek DST geçişleri nedeniyle, bu durum keyfi olarak karmaşıklaşmaktadır. haritalama kesin olmadığı için
DST-şey gerekmiyorsa, timezones()
fonksiyonun dönüş değeri ve Etc/GMT(+|-)x
saat dilimleri arasında bir eşleme Tamam olmalıdır, aksi takdirde hiç Codeigniter zaman dilimi işleme kullanamaz. Benim için
amaçlanan bağlamda daha kullanmayacağınız CodeIgniter'ın tarih yardımcı değerlerinin bu seti sağlıyor niçin soru ? – Ash
Dokümana göre, Codeigniter 'date_default_timezone_set()' ayarlamayı önermez. Ve bu tam olarak benim problemim. Ben php'nin yerel tarih işlevleri veya Codeigniter arasında seçim yapmak daha iyi olduğunu düşünüyorum.Kararımı alıyorum (Codeigniter'in şimdiye kadar kullandım) –