$timepost =" 7:10pm";
当前为加拿大时间(魁北克)。我在想办法把时间转换成法国时间。
假设您的PHP配置设置为魁北克时间,您可以通过以下操作将其转换为法国时区:
$date = new DateTime('7:10pm', new DateTimeZone('Europe/Paris'));
echo $date->format('Y-m-d H:i:sP');
或者,如果您的服务器没有设置为魁北克时区,您可以:
$date = new DateTime('7:10pm', new DateTimeZone('America/Montreal'));
$date->setTimezone(new DateTimeZone('Europe/Paris'));
echo $date->format('Y-m-d H:i:sP');
返回
2013-06-14 01:10:00+02:00
您可以在这里阅读更多关于PHP和时区的信息:http://www.php.net/manual/en/datetime.settimezone.php
使用PHP的date_default_timezone_set()函数
如果您想将其更改为France,您可以使用
date_default_timezone_set('Europe/Paris');
支持的时区列表可以在这里找到:http://www.php.net/manual/en/timezones.php
date_default_timezone_set()的功能可以在这里找到:http://php.net/manual/en/function.date-default-timezone-set.php
查看DateTime::setTimezone:
的例子
date_default_timezone_set('America/Los_Angeles');
$datetime = new DateTime('2013-06-13 12:35:23');
echo $datetime->format('Y-m-d H:i:s') . "n";
$timeEurope = new DateTimeZone('Europe/London');
$datetime->setTimezone($timeEurope);
echo $datetime->format('Y-m-d H:i:s');
<?php
date_default_timezone_set('America/Los_Angeles');//Your global default timeZone.
function convertTimeZone($oTime, $oTimeZone, $nTimeZone)
{
//Parameter string $oTime is original time to be converted from in format F-d-Y h:i:s
//Parameter string $oTimeZone is timezone to be conveted from- Timezone of $oTimeZone
//Parameter string $nTimeZone is timezone to be conveted to
date_default_timezone_set($oTimeZone); //Change default timezone to old timezone within this function only.
$originalTime = new DateTime($oTime);
$originalTime->setTimeZone(new DateTimeZone($nTimeZone)); //Convert to desired TimeZone.
date_default_timezone_set('America/Los_Angeles') ; //Reset default TimeZone according to your global settings.
return $originalTime->format('F-d-Y h:i:s A'); //Return converted TimeZone.
}
$LATime = convertTimeZone("2011-01-07 19:55:00","America/Chicago", "America/Los_Angeles");
echo $LATime;
?>
您可以使用date_default_timezone_set
函数更改本地时区
date_default_timezone_set('Europe/Paris');
这是我的函数,从mysql数据库(我已经完全存储在UTC),并转换到一个新的时区和格式它简单。
function changetimefromUTC($time, $timezone) {
$changetime = new DateTime($time, new DateTimeZone('UTC'));
$changetime->setTimezone(new DateTimeZone($timezone));
return $changetime->format('m/d/y h:i a');
}
这是一个支持的时区列表http://us1.php.net/manual/en/timezones.php