我需要在sql中存储一个特定的时间格式,以便稍后我可以ORDER BY。我的格式是YYYY-MM-DDTHH:MM:SS.SSSZ(例如,2004-08-04T19:09:02.768Z),它似乎既不是unix时间也不是mysql日期格式。我正在使用PHP从Web服务中获取时间,以这种格式提供它。
答案 0 :(得分:1)
strtotime
可以将该日期时间字符串解析为时间戳,然后您可以根据需要进行格式化。
$date = date('Y-m-d H:i:s', strtotime('2004-08-04T19:09:02.768Z'));
$sql = "INSERT INTO table (datecol) VALUES ('$date')";
答案 1 :(得分:0)
首先,将日期(看起来像ISO 8601格式)转换为PHP时间戳
$datetime = strtorime("2004-08-04T19:09:02.768Z");
然后SQL日期格式为
date ("Y-m-d H:i:s", $datetime);