如何使用带有php日期的时区?

如何使用带有php日期的时区?,php,mysql,timezone,utc,Php,Mysql,Timezone,Utc,我有一个PHP页面,它正在拉入一个日期字符串 eg. 2012-11-10 11:37:06 我知道这次是在一个特定的时区 我想将此日期存储在UTCtime的MySQLdate字段中,以便以后可以将其转换为客户端的本地时间 如何在PHP中执行此操作?要转换时区,请使用DateTime类 $d本身是否适合插入到MySQL日期字段中?例如,“updatetable1 SET Date1=$d”这是正确的,但是您还需要通过发出以下命令来确保您的MySQL连接时区设置为UTC:SET time_zon

我有一个
PHP
页面,它正在拉入一个日期字符串

eg. 2012-11-10 11:37:06
我知道这次是在一个特定的时区

我想将此日期存储在
UTC
time的
MySQL
date字段中,以便以后可以将其转换为客户端的本地时间


如何在PHP中执行此操作?

要转换时区,请使用DateTime类


$d
本身是否适合插入到
MySQL
日期字段中?例如,
“updatetable1 SET Date1=$d”
这是正确的,但是您还需要通过发出以下命令来确保您的MySQL连接时区设置为UTC:
SET time_zone='+0:00'更新
命令之前执行code>。如果您确实知道MySQL机器的默认时区设置为UTC,则可以跳过此步骤。
// Create a DateTime object with your local time and local timezone.
$d = new DateTime('2012-11-10 11:37:06', new DateTimeZone('Pacific/Auckland'));

// Convert to UTC
$d->setTimeZone(new DateTimeZone('UTC'));

// outputs 2012-11-09 22:37:06
echo $d->format('Y-m-d H:i:s');