###前提・実現したいこと
PHPで、以下の2つの配列があります。
PHP
1$arr1=array(0=>array('day'=>'2017-04-01','pc'=>10),1=>array('day'=>'2017-04-02','pc'=>5),2=>array('day'=>'2017-04-03','pc'=>8)); 2$arr2=array(0=>array('day'=>'2017-04-01','mb'=>3),1=>array('day'=>'2017-04-02','mb'=>4),2=>array('day'=>'2017-04-04','mb'=>9));
この2つの配列から
$result=array('2017-04-01'=>array('pc'=>10,'mb'=>3),'2017-04-02'=>array('pc'=>5,'mb'=>4),'2017-04-03'=>array('pc'=>8,'mb'=>0),'2017-04-04'=>array('pc'=>0,'mb'=>9))
となるような実装方法に悩んでます。
###考えるやり方
$arr1と$arr2が必ず同じ日付情報で同じ順番で必ずデータを持っているならforで回せばと思いますが、添字2で
日付情報が異なる場合があったり、必ずしも同じ順番ではない可能性を考えた場合、その辺りをどうしたら、
なるべくスマートに解決できるのかと思いご相談に来ました。
array_mapを使えば、スマートにできるかと思いましたが、複数の配列を処理する場合は、結果が
連想配列にできないとか、悩んでます。
極力、テンポラリーな配列を作るのではなく、コード行が少なくて済む方法をご示唆いただければと思います。
回答1件
あなたの回答
tips
プレビュー