2010-01-19 45 views
6

的日期和時間函數的代碼:如何在PHP中爲現有時間戳更改時區?

function date_and_time($format,$timestamp) { 

$date_and_time = date($format,$timestamp); 
return $date_and_time; 

} 

然後代碼以顯示它:

<?php 

     echo date_and_time("dS F Y", strtotime($profile[last_activity_date_and_time])); 

    ?> 

的$的值個人資料[last_activity_date_and_time]是2010-01-18 14點34 :04

當顯示它顯示爲2010 1月18日 - 下午2點34

但是,有沒有辦法改變它顯示在時區?

回答

0

可以使用this function設置默認時區:

date_default_timezone_set('Europe/London'); 
+1

是的,但只用似乎工作新的時間戳,不存在 – Ryan 2010-01-19 16:30:29

18

不知道這是否你在找什麼,但儘量DateTime

date_default_timezone_set('Europe/London'); 

$datetime = new DateTime(); 
$datetime->setTimestamp($yourTimestamp); 
echo $datetime->getTimezone()->getName(); 
echo $datetime->format(DATE_ATOM); 

$la_time = new DateTimeZone('America/Los_Angeles'); 
$datetime->setTimezone($la_time); 
echo $datetime->getTimezone()->getName(); 
echo $datetime->format(DATE_ATOM); 
+2

其他答案地址調整新日期的時區,但是你唯一的地址是調整現有日期的時區。 – 2010-01-19 16:59:07