【发布时间】:2011-08-29 11:50:18
【问题描述】:
我有这样格式的日期:$originalDate = '2011-05-19T15:39:06Z'
我将它存储在 datetime mysql 字段中。
在 phpMyAdmin 中,日期以这种格式显示:2011-05-19 15:39:06
现在我想选择所有 mysql 条目WHERE date = $originalDate
但没有选择任何内容。
我该怎么做?
干杯, 约尔格
【问题讨论】:
我有这样格式的日期:$originalDate = '2011-05-19T15:39:06Z'
我将它存储在 datetime mysql 字段中。
在 phpMyAdmin 中,日期以这种格式显示:2011-05-19 15:39:06
现在我想选择所有 mysql 条目WHERE date = $originalDate
但没有选择任何内容。
我该怎么做?
干杯, 约尔格
【问题讨论】:
转换 $originalDate 以适应 MySQL DATETIME 格式:
先用 PHP 的 strtotime() 转换成整数格式,再用 PHP 的 date() 转换成 MySQL 格式,然后在 MySQL 查询中使用。
编辑:代码:
$mysqlDate = date('Y-m-d h:i:s',strtotime($originalDate));
然后将其用于您的 WHERE 语句:
WHERE `date` = '$mysqlDate'
【讨论】:
您需要在用于比较的日期周围加上引号,并且我确定您需要从 $originalDate 中删除“T”和“Z”字符 ...
例如
$originalDate = '2011-05-19 15:39:06'
where 子句应该是这样的;
WHERE `date` = '$originalDate'
注意字段名称周围的反引号 (`),因为“日期”是 MySQL 保留字/函数。
【讨论】: