我有一个问题,strtotime将我的下午时间返回为0。
这是我的代码:
date_default_timezone_set('Africa/Johannesburg');
$from = strtotime($_GET['meeting_date'] . ' ' . $_GET['meeting_start'] . ':00 ' . date('A',$_GET['meeting_start']));
$to = strtotime($_GET['meeting_date'] . ' ' . $_GET['meeting_end'] . ':00 ' . date('A',$_GET['meeting_end']));
基本上,用户选择日期(2012-06-19)并输入开始时间(已过滤,14:00)和结束时间(已过滤,15:00)。
然后这个片段将给定的字符串转换为秒。
它适用于我在13:00之前输入的任何内容,但在12:59之后输入任何内容时返回0
一些测试用例:
User Input:
Date: 2012-06-19
Start: 10:00
End: 11:50
Result:
start: 1340092800
end: 1340099400
User Input:
Date: 2012-06-19
Start: 11:50
End: 13:00
Result:
start: 1340099400
end: 0
这可能是一个愚蠢的错误,但任何帮助将不胜感激。为什么它会返回0?
答案 0 :(得分:2)
您将12小时和24小时格式混合在一起。 AM和PM后缀的日期格式'A'
表示正在使用12小时格式,因此基本上您无法处理大于12的小时数。