我将许多日期插入数据库。他们中的大多数都写得很正常,这样我就可以用strtotime
'1299XXXXXX'这样的时间来获取时间。
但是,有些日期是这样写的:日/月/年时/分/秒
echo strtotime('12/03/2011 18:00:52'); //this will get 132293165220
因此,我无法在我的数据库中插入所有日期。如何解决问题?谢谢。
我将许多日期插入数据库。他们中的大多数都写得很正常,这样我就可以用strtotime
'1299XXXXXX'这样的时间来获取时间。
但是,有些日期是这样写的:日/月/年时/分/秒
echo strtotime('12/03/2011 18:00:52'); //this will get 132293165220
因此,我无法在我的数据库中插入所有日期。如何解决问题?谢谢。
$temp_date = strtotime('12/03/2011 18:00:52');
echo date('m/d/Y', $temp_date);
其中 'm/d/Y' 是您选择的格式:如果想要完整 -> 'm/d/YH:i:s',
如果只有日期部分 -> 'm/d/Y'
我环顾四周,没有得到任何全面的信息,所以我决定编写自己的日期转换器。参数化好。
function convert_datetime($datestr,$separator,$mysqltouk) {
if(!empty($datestr))
{
if($mysqltouk=='dmy')
{
list($y,$m,$d ) = explode($separator, $datestr);
$mk=mktime(0, 0, 0, $m, $d, $y);
$timestamp=strftime('%d-%m-%Y',$mk);
}
else if ($mysqltouk='ymd')
{
list($d, $m, $y) = explode($separator, $datestr);
$mk=mktime(0, 0, 0, $m, $d, $y);
$timestamp=strftime('%Y-%m-%d',$mk);
}
}
return $timestamp;
}
date
您可以使用以下函数提取日期:
date('h:i:s', strtotime('12/03/2011 18:00:52'));