この3つの配列をマージするにはどうすればよいですか
$name ={"Tom", "John", "David"};
$v1 = {"Tom":100, "David":200};
$v2 = {"John":500, "Tom":400};
2つの異なる方法で1つの多次元連想配列に?1つの方法は、キーの順序を配列「name」の順序と同じにする必要があることです。
$name_merged_original_order = array (
"Tom" => Array(
"v1" => 100,
"v2" => 400
),
"John" => Array(
"v1" => "N/A",
"v2" => 500
),
"David" => Array(
"v1" => 100,
"v2" => "N/A"
)
)
別の方法は、配列「名前」のアルファベット順です。
$name_merged_asc = array (
"David" => Array(
"v1" => 100,
"v2" => "N/A"
),
"John" => Array(
"v1" => "N/A",
"v2" => 200
),
"Tom" => Array(
"v1" => 100,
"v2" => 400
),
)
トリッキーな部分は、配列「v1」と「v2」が「名前」のキーとして順序付けられていないことです。また、「名前」のようにすべてのキーを持っているわけではありません。ありがとう!