2015-01-13 4 views
1

Есть ли какая-либо функция php, которая преобразует строку даты в эквивалентное время Азии/Манилы. Я попробовал установить в Маниле Азии свой часовой пояс по умолчанию, но безрезультатно. Пожалуйста, смотрите образец ниже, необходимо преобразовать в Time Asia/ManilaPHP Дата и время и часовой пояс

Sun, 12 Jan 2015 08:27:42 +0000, 
Mon, 12 Jan 2015 00:14:04 -0500, 
Mon, 12 Jan 2015 05:13:34 +0000 (UTC), 
Mon, 12 Jan 2015 08:57:47 +0000 (UTC), 
Tue, 13 Jan 2015 01:38:04 +0700 (WIT), 
Tue, 13 Jan 2015 00:47:31 +0900 (JST), 
Mon, 12 Jan 2015 23:27:26 +0000 

вашей помощи highy ценится .. Спасибо заранее.

ответ

0

Попробуйте

$date = new DateTime('2000-01-01', new DateTimeZone('Asia/Manila')); 
echo $date->format('Y-m-d H:i:sP') . "\n"; 
0

Пожалуйста, попробуйте сделать следующий

$sdt = '2012-05-15 10:50:00'; 
$stz = new DateTimeZone('UTC'); 

$dtz = new DateTimeZone('Asia/Manila'); 

$dt = new DateTime($sdt, $stz); 

$dt->setTimeZone($dtz); 

$ddt = $dt->format('Y-m-d H:i:s'); 

Надеется, что это Виль вам помочь.

1

Это самый простой способ

date_default_timezone_set('Asia/Manila'); // Set your default TZ to Asia/Manila 

// strtotime() will convert all timezones to your default 
echo date('Y-m-d H:i:s' , strtotime('Mon, 12 Jan 2015 05:13:34 +0000 (UTC)')); 
+0

Спасибо за это. Я уже пробовал этот подход, однако он работал в течение некоторого времени .. но некоторые результаты преобразования в часовой пояс превышают мое текущее время. – reiwin462

0

функция convert_timezone ($ from_tz, $ to_tz, $ время = '2008-08-03 12:35:23') {

date_default_timezone_set($from_tz); 
$datetime = new DateTime($time); 
$time_newTZ = new DateTimeZone($to_tz); 
$datetime->setTimezone($time_newTZ); 
$newDate = $datetime->format('Y-m-d H:i:s'); 

return $newDate; 

}

echo convert_timezone ('Asia/Kuala_Lumpur', 'America/Los_Angeles');

Смежные вопросы