我通过在PHP中使用time()函数来存储我的日期。我的程序中有一个搜索部分。日期字段由jquery datepicker完成。这是我的日期格式,例如:14/12/2012。
问题是表中的字段是时间戳。如何使用MySQL查询从此日期字符串中选择实际日期?
我使用codeigniter作为框架。有没有这方面的功能?
请帮帮我。
答案 0 :(得分:1)
time()只返回一个unix时间戳 - 自1970年1月1日以来的秒数。 MySQL时间戳,日期和日期时间字段与该值不直接兼容,但您可以轻松地在两者之间进行转换:
SELECT UNIX_TIMESTAMP(yourtimestampfield) AS php_compatible_time_value, ...
请注意,MySQL的日期字符串格式为yyyy-mm-dd
。除非转换为MySQL的预期格式,否则不能使用dd/mm/yyyy
格式。
答案 1 :(得分:1)
$date = '14/12/2012';
$d = explode('/',$date);
$timestamp = mktime(0, 0, 0, $d[1], $d[0], $d[2]);
然后在查询中使用$ timestamp
当然,你需要采用不同格式的英国/美国等日期的方法.mm / dd / yyyy或dd / mm / yyyy