前提・解決したいこと
現在配列の勉強をしており二次元配列の基準のものを
代入用のものにカウントしていきたいです。
発生している問題
php
1<?php 2//基準の配列 3$shoppingBasket = [ 4 ['fruit' => 'apple', 'price' =>150], 5 ['fruit' => 'orange', 'price' =>150], 6 ['fruit' => 'grape', 'price' =>300], 7 ['fruit' => 'strawberry', 'price' =>300], 8 ['fruit' => 'pineapple', 'price' =>500], 9]; 10//代入用 11$fruits = [ 12 ['apple'=>0], 13 ['orange'=>0], 14 ['grape'=>0], 15 ['strawberry'=>0], 16 ['pineapple'=>0], 17]; 18//処理 19 20var_dump($fruits); 21// 実現したいこと 22Array 23( 24 [0] => Array 25 ( 26 [apple] => 1 27 ) 28 29 [1] => Array 30 ( 31 [orange] => 1 32 ) 33 34 [2] => Array 35 ( 36 [grape] => 1 37 ) 38 39 [3] => Array 40 ( 41 [strawberry] => 1 42 ) 43 44 [4] => Array 45 ( 46 [pineapple] => 1 47 ) 48)
試したこと
array_columnでまず分解してからarray_merge_recursive(array_merge)を
使用し処理してみたが、後に追加されるだけで代入用に追加されない。
PHP
1$fruit = array_column($shoppingBasket, 'fruit'); 2$me = array_merge_recursive($fruits,$fruit); 3print_r($me); 4//結果 5Array 6( 7 [0] => Array 8 ( 9 [apple] => 0 10 ) 11 12 [1] => Array 13 ( 14 [orange] => 0 15 ) 16 17 [2] => Array 18 ( 19 [grape] => 0 20 ) 21 22 [3] => Array 23 ( 24 [strawberry] => 0 25 ) 26 27 [4] => Array 28 ( 29 [pineapple] => 0 30 ) 31 32 [5] => apple 33 [6] => orange 34 [7] => grape 35 [8] => strawberry 36 [9] => pineapple 37)
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
回答2件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2021/11/10 02:33
2021/11/10 02:43
2021/11/10 03:44