0

foreachループ外の複数のループで複数の値にアクセスしようとしています。

foreach(array1 as arr1) {
    $var1 = arr2['value1'];  //$array is associative array with mutliple keys value1
}

それから私は別のものを持っています

foreach(array2 as arr2) {
    $var2 = arr2['value']; //$array2 is another associative array with multiple keys value
}

これらはすべて別の大きなforeachループ内にあり、今度は大きな内に配列を作成しforeach$var1使用し$var2ます。これから作成するこの配列は、連想配列にもなります。どうすればこれを行うことができますか?

配列1:

Array
(
  [0] => Array
    (
        [id] => 1
        [id_name] => 251452
        [name] => bob
    )

[1] => Array
    (
        [id] => 2
        [id_name] => 251453
        [name] => bob

    )

)

アレイ2:

Array
(
[0] => Array
    (
        [id_person] => 4
        [id_last_name] => 251452
        [last_name] => smith

    )

[1] => Array
    (
        [id_person] => 15
        [id_last_name] => 251453
        [last_name] => johnson
    )

)

これらがデータベースからの2つの異なるクエリからのものであると想定します。

それぞれの最初の配列から名を取得し、それぞれの2番目の配列から最後の名前を取得して、このデータを他の配列と一緒に持つ1つの配列を作成したいと思います。

4

1 に答える 1

2

多次元配列を調べてください。

また、stdclassを見て、単一の定義内に多くの変数を格納できるこれらの配列を作成することもできます。これは多くの点で役立ちます。(標準クラス)

ネストされたループ-これは、すべてのサブ配列をオブジェクトにダンプするだけです//InnerArrayのオブジェクトと配列の例

 $Object = new stdclass();
 $AllOfIt = array();
 $cnt = 0;
 foreach($OuterArray as $OuterKey => $InnerArray)
 {
      $cnt++;
      foreach($InnerArray as $InnerKey => $InnerValue)
      {
           $Object->$cnt = $InnerValue;
           $AllOfIt[$cnt] = $InnerValue;
      }
 }
于 2012-08-23T23:54:41.690 に答える