2016-08-08 13 views
0

テーブル内には、foreachループに挿入される多くの一致する資格がありますが、最初のforeach要素からのみ結果が得られます。どうすればそれを修正できますか?foreachの最初の要素からの結果の取得

foreach($matches as $match) 
    { 
     $object = $match->object; 

     $sales->whereRaw("match (`object`) against (?)", array($object)); 

     if($match->colourBase == '1') 
     { 
      $sales->where('colour', '=', 'CC'); 
      $sales->orWhere('colour', '=', 'CC+DD'); 

      if($match->maxPrice) 
      { 
       $sales->where('price', '<=', $match->maxPrice); 
      } 

      if($match->minPrice) 
      { 
       $sales->where('price', '>=', $match->minPrice); 
      } 
     } 
    } 

    $results = $sales->orderBy('sales.updated_at', 'asc')->get(); 

@Update

これは、あなたが1つのレコードだけ 使用first()機能が必要な場合、私は$

$matches = Match::where('PeopleID', '=', $id)->get(); 
+0

なぜあなたは、コードを取得しながら、申し訳ありませんが、私は間違いをやったmatch->色== 1 – coder

+0

@coderを使用しています。今修正されました。 –

+0

あなたの質問を$ matches配列で更新する – DsRaj

答えて

0

に一致する取得する方法です。 foreachを使用する必要はありません。 :)

$matches = Match::where('PeopleID', '=', $id)->first(); 
関連する問題