私の目標は、2 つの配列 1 を Google カレンダーから取得し、もう 1 つは Google スプレッドシートから取得することです。Calendar 配列に ID フィールドがあることを除いて、配列は両方とも同じようにフォーマットされます。
私の多次元 Google スプレッド シート配列には、次のような多数の配列が含まれています。
array (
'startDate' => '2013-03-29',
'endDate' => '2013-03-29',
'startTime' => '08:00',
'endTime' => '20:00',
'title' => 'Ext2 Joe',
)
私の多次元 Google カレンダー配列には、次のような多数の配列が含まれています。
array (
'startDate' => '2013-03-29',
'endDate' => '2013-03-29',
'startTime' => '08:00',
'endTime' => '20:00',
'title' => 'Ext2 Joe',
'id' => 'enmjke5qpjs41q93vi8tibp85k',
)
これが私が使用しているコードです。両方に存在する多くのイベントを見逃しています。私はこれに苦労しており、別の方法で再フォーマットしており、重複を削除して、残っているものを含む配列だけを残すことができないようです$final_array
。Google カレンダーにはまだ存在しないので、これらの要素を追加できます。
$k=0;
$match=0;
$remove_events=array_values($all_events);
$add_final_array=$final_array;
foreach($final_array as $array_final)
{
$h=0;
foreach ($all_events as $loop_all_events)
{
if ($array_final["startDate"]==$loop_all_events["startDate"]){
if ($array_final["endDate"]==$loop_all_events["endDate"]) {
if ($array_final["title"]==$loop_all_events["title"]) {
if($array_final["startTime"]==$loop_all_events["startTime"])
{
unset($add_final_array[$k]);
unset($remove_events[$h]);
$remove_events=array_values($remove_events);
$match++;
} } } }
$h++;
}
$k++;
}