Я пытаюсь создать довольно сложный массив для моего календарного приложения.Он должен содержать даты, с названием дня, типом и событиями, если они есть.Я дошел до создания этого:
[dates] {
[22] {
[day] => [Friday]
[type] => [weekday]
}
[23] {
[day] => [Saturday]
[type] => [Weekend]
}
[24] {
[day] => [Sunday]
[type] => [Weekend]
}
}
Теперь я хотел бы добавить еще один ключ, называемый «события».Я хочу добавить события для каждого дня в массив. Таким образом, я мог бы получить что-то вроде:
[24] {
[day] => [Sunday]
[type] => [Weekend]
[events] {
[1] {
[title] => [test event]
[description] => [my event]
[date] => [24-04-2011]
}
[2] {
[title] => [test event 2]
[description] => [my second event]
[date] => [24-04-2011]
}
}
Не уверен, имеет ли это смысл.
Я создал первый пример, используя этокод:
for($i = 1; $i <= $data['days_in_curr_month']; $i++)
{
$day_info = $this->get_day_info($i, $data['current_month'], $data['current_year']);
$dates[$i]['name'] = $day_info['day_name'];
$dates[$i]['type'] = $day_info['day_type'];
}
return $dates;
Затем я хотел получить информацию о событии, выполнив:
$event_info = $this->get_event_info($i, $data['current_month'], $data['current_year']);
в том же цикле for.
MyМетод get_event_info выглядит следующим образом:
public function get_event_info($day, $month, $year)
{
$date = $year . "-" . $month . "-" . $day;
$this->db->where('date', $date);
$this->db->where('user_id', '1');
$query = $this->db->get('tblEvents');
$event_info = array();
foreach($query->result() as $row)
{
$event_info['events'][$row->id]['title'] = $row->title;
$event_info['events'][$row->id]['description'] = $row->description;
}
return $event_info;
}
Он выводит массивы следующим образом:
Array ( [events] => Array ( [1] => Array ( [title] => Project 2 [description] => Test: Project 2 ) [2] => Array ( [title] => Illustrator [description] => Test: Illustrator 2 ) ) )
Теперь я возвращаю $ event_info из get_events_info
в метод create_dates_list
, но яЯ не уверен, как бы я добавил добавление массивов событий в массив $ date.
get_event_info получает события для каждой даты (1 - конец месяца-).Затем я хочу добавить их в мой массив $ date в формате, указанном выше во втором примере.
Я запутался, потому что это довольно сложные массивы.Заранее спасибо.