将字符串转换为时间并在PHP中汇总

时间:2012-06-18 18:51:29

标签: php forms timestamp

我正在创建预订系统,我正在尝试从表单值中总结时间字符串。前两个表单字段是小时(9到18)和用户选择的分钟(00和30)的起点,例如9和30.

$time = "".$_POST['h'].":".$_POST['min'].":00";

第二个表单字段是保留项目的时间(30分钟到3小时)。

<select name="reserved">
<option value="0:30">30 min.</option>
<option value="1:00">1:00 h.</option>
<option value="1:30">1:30 h.</option>
<option value="2:00">2 h.</option>
<option value="2:30">2:30 h.</option>
<option value="3:00">3 h.</option>
</select>

因此,我需要总结$ time和“reserved”下拉值,以获得适当的总计时间9:30 + 0:30 = 10:00。希望你理解,谢谢你的建议。试图转换成时间戳并总结,但没有运气。

2 个答案:

答案 0 :(得分:4)

为什么不尝试将时间组合为字符串然后将其提供给strtotime()函数?这会给你一个时间戳。从那里你可以做你想要的任何操作。

检查文档here

答案 1 :(得分:1)

如果开始时间是9:30,保留时间是0:30,请使用strtotime获取开始时间的时间戳,并将其与预留时间的总秒数相加。

$a = '9:30';
$b = '0:30';
list($h, $m) = explode(':', $b);
echo date('H:i', strtotime($a) + $h*60*60 + $m*60); // 10:00