特定のユーザーのデータベースにあるイベントがあるすべての日を取得する関数を作成しようとしています。たとえば、2013 年 1 月 23 日に 2 つのイベントがあった場合、2013 年 1 月 23 日が配列に追加されます。私はそれを機能させたので、すべての日を追加します(同じ日を2回追加することなく)が、今では毎日いくつの日付があるかを言いたいです。したがって、2013 年 1 月 23 日には、その日に 2 つのイベントがあると表示されます。
これが理にかなっていることを願っています...さらに支援するためのコードがいくつかあります。
PHP 関数 (イベントのある日を毎日取得)
//gets upcoming days that have events for a user
public function get_upcoming_days_with_events() {
$return_array = array();
$date_in=null;
$user_id = $this->session->userdata('id');
$query =$this->db->select()->from('events')->where('user_id', $user_id)->get();
foreach ($query->result_array() as $event => $row) {
$date = strtotime($row['date_due']);
if (sizeof($return_array) != 0) {
foreach ($return_array as $date_in_array => $row) {
$d = $row['full_date'];
if (date('Y-m-d', $date) == $d) {
//date is already in array
//increment the number of assignments on this day
$row['number_of_assignments'] += 1;
$date_in = true;
} else{
$date_in = false;
}
}
}
if ($date_in == false) {
$return_array[] = array(
'day' => date('d', $date),
'month' => date('m', $date),
'full_date' => date('Y-m-d', $date),
'number_of_assignments' => 1
);
}
}
return $return_array;
}
したがって、これにより、関数が特定の日に複数のイベントがあることに気付いた場合に $return_array['number_of_assignments'] をインクリメントできるようにしたいと考えています。
さらに情報が必要な場合はお知らせください...
ありがとう!:)