2017-02-05 7 views
0
$user = $this->get_user_or_redirect(); 
     $calendars = $user->get_calendars1(); 
     $events = []; 
     foreach ($calendars as $calendar) 
     { 
      $events += $calendar->get_events(); 

     } 

$calendarsは、特定のユーザーのすべてのカレンダーを含む配列です。 各カレンダーにはいくつかのイベントがあります。関数get_event()は、各カレンダーのイベントの配列を返します。foreachループで2つの配列を結合する

私がしたいのは、ユーザーに固有のイベントの空の配列($events = [])にイベントの配列(カレンダーに固有)を追加することです。 私はデバッガを使用して、foreachループのコードが動作しないようですが、私はなぜそれがわかりません。

答えて

0

次のようにループを変更して配列にデータを追加します。あなたが使用する必要があります

foreach ($calendars as $calendar) 
{ 
     $events[] = $calendar->get_events(); 

} 
0

[]

$events[] = $calendar->get_events(); 

によって

$events += $calendar->get_events(); 

の交換各$のカレンダーの

$user = $this->get_user_or_redirect(); 
    $calendars = $user->get_calendars1(); 
    $events = []; 
    foreach ($calendars as $calendar) 
    { 
     $events[] = $calendar->get_events(); 

    } 
+0

@atomiktom ...答えの1つが正しい場合は1つを選択し、それを受け入れられたとマークしてください...こちらを参照してください。 http://meta.stackexchange.com/questions/5234/how-does-acceptingアンサーワーク – scaisEdge

0

を$イベントインスタンスを追加するためには、働いていました。

0

あなたは、イベント配列が

  1. あなたはこのような多次元配列を作成する必要があるユーザー

に特有のカレンダー

  • に固有で保存されたいです。

    foreach ($calendars as $calendar) 
    { 
        $events[$user][$calendar][] = $calendar->get_events(); 
    
    } 
    

    この方法で、必要なイベントを追跡することができます。

  • 関連する問題