Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/273.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/8/mysql/58.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 将英国日期转换为UTC_Php_Mysql - Fatal编程技术网

Php 将英国日期转换为UTC

Php 将英国日期转换为UTC,php,mysql,Php,Mysql,我有一个名为pm_msg的表,其中有一个时间列和以下值: 07-02-2013 18:11:00 27-01-2013 16:02:44 28-01-2013 10:30:26 30-01-2013 13:30:06 我想在运行PDO SQL查询时将它们转换为Unix时间戳。 这是我到目前为止所做的,但它似乎返回了一个错误。我该怎么做呢 $sql = "SELECT * from pm_msg ORDER BY (strtotime(time)) ASC;"; strotime在MySQL中

我有一个名为pm_msg的表,其中有一个时间列和以下值:

07-02-2013 18:11:00
27-01-2013 16:02:44
28-01-2013 10:30:26
30-01-2013 13:30:06
我想在运行PDO SQL查询时将它们转换为Unix时间戳。 这是我到目前为止所做的,但它似乎返回了一个错误。我该怎么做呢

$sql = "SELECT * from pm_msg ORDER BY (strtotime(time)) ASC;";

strotime
在MySQL中不存在,您需要
UNIX\u时间戳
函数:

$sql = "SELECT * from pm_msg ORDER BY (UNIX_TIMESTAMP(time)) ASC;";

但是,您不需要将其转换为UNIX时间戳来对其进行排序。排序在日期上是否正确?也许您打算将
UNIX\u时间戳添加到
选择部分中?

UTC与GMT大致相同-不考虑DST

所以在春季和秋季,你需要考虑到这一点


但要使用SQL将日期/时间转换为unixtime,请参见或

,如果您现在正在使用类似于varchar的东西,则将时间列设置为datetime会更容易。

@methuselah PDO只是MySQL连接的客户端库。它不会改变查询,也不会删除功能。如果MySQL支持该函数,PDO将“支持”该函数。我想你可能忽略了他使用的是英国日期/时间戳这一事实