2017-05-22 26 views
0

連想配列の配列をどのように保存するか教えてもらえますか?私はこのコードがうまくいくと思いましたが、そうではありません。私はそれを研究しようとしましたが、答えを見つけることができませんでした。連想配列をPHPの別の連想配列にコピーするには

foreach($rows as $row) { 
    // Some SQL... 
    if ($stmt->execute()) { 
     while ($row2 = $stmt->fetch(PDO::FETCH_ASSOC)) { 
      $row['NestedResults'][] = $row2; 
     } 
    } 
} 

foreach ($rows as $row) { 
    foreach ($row['NestedResults'] as $results) { 
     echo $results['Item'] . '<br>'; 
    } 
} 

PS:私はそのようなループのSQL文いけない知っているが、それは特殊なケースです。あなたの最初のforeachループでは

答えて

2

、あなたがそうでなければあなただけの$rowに保存されている$rowsからの要素のコピーを変更している、参照することにより$row変数を渡す必要があります:

foreach($rows as &$row) 
+0

ありがとう!それがトリックでした。 – robbie9485

0

あなたはそれがに実行可能だと思いますか2番目のループを次のように最初のループの中に入れますか?

100%確実ではない $row['NestedResults'][] = $row2; foreach ($row['NestedResults'] as $results) { echo $results['Item'] . '<br>'; }

...

+0

後でHTML表示の結果を保存していますので、いいえ、ありがとうございます。 – robbie9485