0

私は以下の配列を持っています:

[1]=>
  array(2) {
    [0]=>
        object(stdClass)#23 (7) {
          ["AddressesTableID"]=> string(1) "8"
          ["AccreditNo"]=> string(13) "5129876de28ff"
          ["Type"]=> string(4) "home"
          ["Street"]=> string(34) "Wallace, Village, Under the bridge"
          ["Municipality"]=> string(8) "Tortuous"
          ["Province"]=> string(8) "Sardonic"
          ["ContactNo"]=> string(8) "92012010"
        }
    [1]=>
        object(stdClass)#24 (7) {
          ["AddressesTableID"]=> string(1) "9"
          ["AccreditNo"]=> string(13) "5129876de28ff"
          ["Type"]=> string(6) "office"
          ["Street"]=> string(25) "Rasputin Query, Palpitate"
          ["Municipality"]=> string(7) "Opulent"
          ["Province"]=> string(6) "Number"
          ["ContactNo"]=> string(8) "29101011"
    }
  }

これを次のように変換する方法を教えてください。

すべての値が配列として類似のキーにグループ化されている場所は?

["AccreditNo"]=> array(2) { "5129876de28ff", "GKIJUGUIKGI" }
["Type"]=> array(2) { "home", "home" }
["Street"]=> ...
["Municipality"]=> ... 
["Province"]=> ...
["ContactNo"]=> ...
4

2 に答える 2

2

次のように、array_merge_recursive() 関数を使用できます。

$arr = array_merge_recursive($arr1, $arr2)

詳細については、こちらを参照してください: http://www.php.net/manual/en/function.array-merge-recursive.php

于 2013-02-25T14:27:17.630 に答える
2

試してみてください:

$input  = array( /* your input data*/ );
$output = array();

foreach ( $input as $data ) {
  foreach ( $data as $key => $value ) {
    if ( !isset($output[$key]) ) {
      $output[$key] = array();
    }
    $output[$key][] = $value;
  }
}
于 2013-02-25T14:17:24.963 に答える