【发布时间】:2016-11-10 13:34:36
【问题描述】:
我的要求是显示数组中的日期列表以及该特定日期的可用时间。
我把所有的逻辑都设置好了,但在一个地方挣扎,请低头看看这个问题。
我有一个数组,如下所示,我需要将 'booked_from_time' 动态更改为 'from_time',无论我想要什么。
我该如何实现,请帮我实现它的解决方案。
<!-- Array response -->
[2016-11-25] => Array
(
[0] => Array
(
[from_time] => 00:00:00
[to_time] => 23:59:59
)
)
[2016-11-26] => Array
(
[0] => Array
(
[booked_from_time] => 2016-11-26 00:00:00
[booked_to_time] => 2016-11-26 16:00:00
)
[1] => Array
(
[booked_from_time] => 2016-11-26 16:00:00
[booked_to_time] => 2016-11-26 19:20:00
)
[2] => Array
(
[from_time] => 00:00:00
[to_time] => 23:59:59
)
)
[2016-11-27] => Array
(
[0] => Array
(
[from_time] => 00:00:00
[to_time] => 23:59:59
)
)
//My Php Code
function multipleBookingsInADay($tempList){
foreach($tempList as $key => $dataValue){
$previousFromDate;
foreach($dataValue as $keyOne => $innerData){
if(isset($innerData['booked_from_time'])){
$tempStartTime = date('Y-m-d H:i:s',strtotime($key . " 00:00:00"));
$tempFromTime = date('Y-m-d H:i:s',strtotime($key . " " . $innerData['booked_from_time']));
if(empty($previousFromDate)){
$previousFromDate = date('Y-m-d H:i:s',strtotime($key . " 00:00:00"));
}
$tempList[$key][$keyOne]['booked_from_time'] = $previousFromDate;
$tempList[$key][$keyOne]['booked_to_time'] = $tempFromTime;
$previousFromDate = $tempFromTime;
continue;
}
break;
}
}
print_r($tempList);
}
提前致谢。
【问题讨论】:
-
试试
array_merge的概念。 -
请根据上面给出的示例提供您想要的结果。