PHPで配列の結合
phpでデータベースから取得してきたデータをidをkey、nameをvalueとする連想配列に挿入するという処理を書いていました。その後、複数の同じ形式の連想配列を結合しようと思い、array_mergeを用いて複数の連想配列を結合しました。その処理をテストしたところうまくいっていたようだったのですが、実際に運用してみると問題が生じてしまいました。idとkeyが一致していないことがあったのである。
原因はphpのarray_mergeはkeyを自動的に1,2,3といったように振り直してくれるという機能でした。テストした時に用いたデータのidが規則的に1から並んでしまっているものを使用したのがまずかったです。テストする時には無作為なデータを用いなくてはいけませんね。
対処法としてはarra_mergeとか複雑なものを使わずにただ”+”で足し合わせればいいだけでした。