0

格納される結果$gは 1 と 2 です。以下に記述した次のコードでは、最後の要素である$array['music']2 のみを格納します。$gand 2 with mu_id(mu_idは別のテーブルの列名music) で、1 行目と 2 行目のすべての行データを to に格納し$array['music']ます。

1行目ではなく2行目(2)のみ格納しているか、ループ内で2回目の実行時に上書きしています。それを機能させるためのロジックがあれば、私に知らせてください。

    foreach($genre as $g)
    {
        echo $g;
        echo "<br>";
        $array['music'] = $m -> where('mu_id', $g ) -> get();
    }
4

2 に答える 2

6

配列に追加するのではなく、毎回配列全体を再宣言しています。代わりにこれを使用してください。

foreach($genre as $g)
{
    $array['music'][] = $m->where('mu_id', $g)->get();
}

またはさらに良いことに、クエリが少なくなります。

$array['music'] = $m->where_in('mu_id', $genre)->get();
于 2012-04-30T08:32:54.087 に答える
0

$array['music'][]すべてのデータを配列に格納する場合は、代わりに 使用する必要があります $array['music']

于 2012-04-30T08:33:06.817 に答える