以下代码......
$date = "02-13-2012";
$start_time = "17:30";
$end_time = "20:00";
$start_timestamp = date("m-d-Y H:i",strtotime($date." ".$start_time));
$end_timestamp = date("m-d-Y H:i",strtotime($date." ".$end_time));
print($start_timestamp);
print($end_timestamp);
...返回
1969-12-31 19:30:00
1969-12-31 20:30:00
有谁知道为什么这不能正常工作?
答案 0 :(得分:2)
02-13-2012 17:30
不是recognized date format。使用日期 - 月 - 年 - 或年 - 月 - 日订单,或使用自定义解析日期格式,例如DateTime::createFromFormat
。
答案 1 :(得分:0)
您的日期格式对于strtotime函数不正确
要么改变
$date = "13-02-2012";
或其他一些有效格式
答案 2 :(得分:0)
当您将日期格式设置为xx-yy-zzz
时,strtotime()
会将其解释为普通格式的日期,而不是美国日期,因此它是dd-mm-yyyy
。
答案 3 :(得分:0)
看到这个。我想你必须改变日期格式。
$date = "02-13-2012";
$date = str_replace("-","/",$date);
$start_time = "17:30";
$end_time = "20:00";
$start_timestamp = date("m-d-Y H:i",strtotime($date." ".$start_time));
$end_timestamp = date("m-d-Y H:i",strtotime($date." ".$end_time));
print($start_timestamp);
echo "<br/>";
print($end_timestamp);