2016-10-30 11 views
0

で雄弁なコレクションをフィルタリングすることはできません。は、私は、変数とコレクションをフィルタリングすることができない変数

$sections = Section::all(); 
    $courses = array("MATH282", "MATH201" , "GEOM202"); 
    foreach ($courses as $course) 
    { 
     $sections1 = $sections->filter(function($foo) 
     { 
      if ($foo->course == $course) { 
      return true; 
      } 
     }); 
    } 

条件が文字列の場合、フィルタが動作します。他のすべてが動作します。

答えて

1

use()がフィルタクロージャ機能で機能していません。あなたのコードは次のようになります:

$sections = Section::all(); $courses = array("MATH282", "MATH201" , "GEOM202"); 
foreach ($courses as $course) { 
    $sections1 = $sections->filter(function($foo) use($course) { 
     if ($foo->course == $course) { 
      return true; 
     } 
    }); 
} 
関連する問題