【发布时间】:2015-06-11 11:31:11
【问题描述】:
我有一个基于 Woocommerce 和 Woocommerce Bookings 插件的预订系统。这意味着基本上我无法控制给我的数据格式。在结帐过程结束时,我得到了预订的开始日期和持续时间,我需要显示结束日期。从理论上讲,这非常简单。我得到的数据是这样的:
Array
(
[Booking Time] => 8:00 am
[Duration] => 5 hours
)
没有好用的时间戳,但我认为 date() 可以轻松处理这样的事情。这是我使用的代码:
date ('h:ia', strtotime(($item['Booking Time'] + $item['Duration'])));
这几乎可以工作,问题是在这种情况下它输出 01:00am 而它显然应该是 01:00pm,所以它得到了正确的时间,但只是不理解 am/pm 开关。考虑到我得到的数据结构,这里最好的解决方案是什么?
【问题讨论】:
-
尝试strtotime() 独立预订时间和时长。或者,您可以 strtotime() 预订时间,附加日期(例如,例如 2015 年 1 月 20 日上午 8:00),然后通过将小时乘以 60 或其他值来计算持续时间(如果您有天数,则乘以 24首先,你明白了)。
标签: php wordpress woocommerce