Ben her sabah bunu nasıl okuma oldum ve genel fikir şudur: UTC sizin damgaları depolamak ve oradan mahsup hesaplar.
Ancak, çoğu insan gibi, ben varolan bir kod temeli muhafaza ediyorum ve bizim tarihleri depolamak şekilde değiştiremezsiniz. En azından değil, ayrılan süre içinde.
Yani benim soru güvenle böyle bir şey yapabilirler mi?
// this is my time zone
$timestamp = strtotime($timestampFromDatabase);
date_default_timezone_set('America/New York');
$tz = date_default_timezone_get();
// this is theoretically their timezone, which will eventually
// be taken from a session variable
date_default_timezone_set('Europe/Paris');
$offset = time() - $timestamp;
$timestamp -= $offset;
// now that I have the offset, display dates like this
date('r', $timestamp);
Bazı insanlar tarih aritmetiği yaparken karşı tavsiye, ama burada yanlış yapıyorum ne var? Daha iyi bir yolu var mı? Ben için dikkat etmeniz gereken tuzaklar var mı? Ben bu yöntemi üretmek olabilir hataların ne tür özellikle ilgileniyorum, ve varsa, onlar kim etkileyecek?
Patronum hata yalnızca kullanıcı tabanı% 1'ini etkileyen umurumda değil adam türüdür.
Düzenleme: Ben bu herhangi bir net yapabilir miyim? Ben bu konuda çok fazla tutanlar var görünmemektedir. Herkes? Hatta belirsiz bir öneri ya da bir bağlantı son derece yararlı olacaktır.