• 締切済み

添字配列をマージする方法はありますか?

<? $a[0]["test"] = Array("Q1","Q2"); $b[0]["test_result"] = Array("A","B"); print_r(Array_Merge($a,$b)); ?> 期待する結果 Array ( [0] => Array ( [test] => Array ( [0] => Q1 [1] => Q2 ) [test_result] => Array ( [0] => A [1] => B ) ) ) 期待する結果にならないので、foreachでぶん回して、 再度格納しています・・ 添字配列をマージできる関数な方法はないでしょうか?

みんなの回答

  • sakusaker7
  • ベストアンサー率62% (800/1280)
回答No.2

すみません。わたしの手元で#1の方の回答にある例を実行した結果と 質問者さんが「期待する結果」として書いている結果とで 違いがないように思えるのですが、実際のところどういうデータから どういう結果をお望みなのでしょうか?

  • wish46
  • ベストアンサー率78% (29/37)
回答No.1

以下の方法はいかがでしょう? $a["test"] = Array("Q1","Q2"); $b["test_result"] = Array("A","B"); $c[] = array_merge($a,$b); print_r($c);

php4
質問者

お礼

すみません。連想配列ではなく、連番が良いのです。 理由としては、フォームで、 <tr><td> name="aaaaa[0][type][0]" value="xxx" name="aaaaa[0][type][1]" value="xxx" <td></tr> <tr><td> name="aaaaa[1][type][0]" value="xxx" name="aaaaa[1][type][1]" value="xxx" <td></tr> という複雑な事をしていまして・・ フォームで$_POSTした値と$_FILEをaaaaa単位で纏めたいのですが、 やはり地道にforeachで行く事にしますね。

専門家に質問してみよう