Как видно из приведенного ниже кода, в 2020-01-13 есть две встречи, но они генерируются как отдельный массив. Как я могу поместить их обоих в один и тот же массив, поскольку они находятся в один и тот же день? Я извлекаю всю информацию из базы данных, используя mysqli, но ради этого кода я печатаю только необходимое. Это работает, но мне нужно знать, как собрать встречи с одинаковой датой в одном массиве.
php
//declare variable
$result = array();
//iterate
while($schedule = $result_data->fetch_assoc()){
//start time conversion into american time
// 24-hour time to 12-hour time
$start_time =date("g:i a", strtotime($schedule['start_time']));
//end time conversion into american time
$end_time =date("g:i a", strtotime($schedule['end_time']));
$my_schedule_start .= $start_time;
$my_schedule_end .= $end_time;
$schedule_date= $schedule['cleaning_date'];
$result[] = array(
"$schedule_date" => [
"number"=>'1',
"badgeClass"=>'',
"url"=>'url',
"dayEvents"=>[
"title"=>$schedule['first_name'].' '.$schedule['last_name'],
"status"=>$schedule['cleaning_status'],
"time"=>$start_time .' - '.$end_time
]
]
);
}
//send response back to jquery
header('Content-Type: application/json');
echo json_encode($result);
this php печатает это
[{"2020-01-15":{
"number":"1",
"badgeClass":"",
"url":"url",
"dayEvents":{
"title":"Jen Doe",
"status":"Booked",
"time":"11:00 am - 12:00 pm"}
}
},
{"2020-01-13":{
"number":"1",
"badgeClass":"",
"url":"url",
"dayEvents":{
"title":"John Doe",
"status":"Booked",
"time":"2:00 pm - 5:00 pm"}
}
},
{"2020-01-13":{
"number":"1",
"badgeClass":"",
"url":"url",
"dayEvents":{
"title":"Alfred Doe",
"status":"Booked",
"time":"11:00 am - 12:00 pm"}
}
}
]
но мой желаемый результат - это
[{
"2020-01-15": {
"number": "1",
"badgeClass": "",
"url": "url",
"dayEvents": {
"title": "Jen Doe",
"status": "Booked",
"time": "11:00 am - 12:00 pm"
}
}
},
{
"2020-01-13": {
"number": "2",
"badgeClass": "",
"url": "url",
"dayEvents": [{
"title": "John Doe",
"status": "Booked",
"time": "2:00 pm - 5:00 pm"
},
{
"title": "Alfred Doe",
"status": "Booked",
"time": "11:00 am - 12:00 pm"
}
]
}
}
]