2016-08-16 17 views
5

PST (aka America/Los_Angeles) içinde dünün başlangıcını oluşturmak için bu kodu kullanıyorum. Sonucu UTC'ye nasıl dönüştüreceğimi anlayamıyorum.PHP mktime sonucunu UTC dönüştürebilirsiniz

date_default_timezone_set("America/Los_Angeles"); 
$time1 = date("Y-m-d H:i:s", mktime(0,0,0, date('n'), date('j')-1, date('Y'))); 

Bunu denedim, ancak $ time1 tarih değil, dize. Yani aşağıdakiler işe yaramaz.

$time1->setTimezone(new DateTimeZone("UTC")); 

cevap

5

DateTime sınıfı ... Eğer

$date = new DateTime(null, new DateTimeZone('America/Los_Angeles')); // will use now 

echo $date->format('d/m/Y H:i:s'); //16/08/2016 16:13:29 

$date->setTime(0,0,0); 
$date->modify('-1 day'); 
echo $date->format('d/m/Y H:i:s'); // 15/08/2016 00:00:00 

$date->setTimezone(new DateTimeZone('UTC')); 
echo $date->format('d/m/Y H:i:s'); // 15/08/2016 07:00:00 
+0

Şimdi işte layık kod örneği için bunları yapmak dokümantasyon bölümüne :) yayınlamak düşünebilirsiniz. – YvesLeBorg

+0

@YvesLeBorg Neden teşekkür ederim efendim – RiggsFolly