php中最好的方法是采取以下字符串mm [some char] dd [some char] yyyy并将其翻译为yyyymmdd? 我可能希望在将来,根据当地做同样的dd [some char] mm [some char] yyyy。 如果有一种方法已经使用Zend Framework API,那就更好了
答案 0 :(得分:2)
<?php
$str = '08-24-1989'; // can be in any recognizable date format.
$new_str = date('Ymd', strtotime($str)); // produces "20090824".
?>
您可以使用here找到的任何日期格式字符替换上面第二条语句中的Ymd
。
如果您希望使用Zend的Zend_Date框架,请查看一些示例和文档here。坦率地说,PHP函数在您的情况下更简单易用。
答案 1 :(得分:1)
date('Ymd', strtotime($time));
Strtotime绝对是将几乎任何时间格式转换为标准格式的最佳工具,然后您可以使用Date将其格式化为所需格式。
因为你问题标题是MySQL Dates,这是mysql使用的字符串格式。
date('Y-m-d h:i:s', strtotime($time));
答案 2 :(得分:0)
除非[某些字符]不同,否则请使用mysql str_to_date功能,例如STR_TO_DATE('12 | 23 | 2009' 年, '%M |%d |%Y');
答案 3 :(得分:0)
我绝对会将TIMESTAMP用于任何日期存储。处理时间差异非常容易(例如SELECT ... WHERE date BETWEEN 2138728753 AND 376251237)并且可以很容易地翻译成任何语言环境:)