В вашем первом вопросе, как получить день к DayId
, вы можете сделать следующее:
$mapDay = [
0 => "Sunday",
1 => "Monday",
2 => "Tuesday",
3 => "Wednesday",
4 => "Thursday",
5 => "Friday",
6 => "Saturday"
];
$array = array_map(function($item) use ($mapDay) {
$item['DayId'] = $mapDay[$item['DayId']];
return $item;
}, $array);
, и это не помешает вашей существующей структуре массива;
Во втором вопросе, как преобразовать ваши StartTime
и EndTime
в этот формат Сб, Вс: 08:30 - 19:00. Вы можете сделать так:
function transformDateToString($startTime, $endTime) {
$start = strtotime($startTime);
$end = strtotime($endTime);
$startDay = date('D', strtotime($start));
$endDay = date('D', strtotime($end));
$startHour = date('h:i A', strtotime($start));
$endHour = date('h:i A', strtotime($end));
return sprintf("%s,%s %s - %s", $startDay, $endDay, $startHour, $endHour);
}
Надеюсь, это решит вашу проблему.