Gabungan Tatasusunan PHP: Menggabungkan Tatasusunan dengan Kekunci Padanan
Soalan ini meneroka cara menggabungkan dua tatasusunan PHP yang berkongsi kunci yang sama. Mari kita selami masalah dan penyelesaiannya.
Masalah:
Pertimbangkan dua tatasusunan berikut:
Objektifnya adalah untuk menggabungkan tatasusunan ini dengan mengagregatkan nilai yang sepadan dengan setiap kunci yang sepadan.
Penyelesaian Menggunakan array_map:
Walaupun array_merge_recursive boleh menggabungkan tatasusunan secara rekursif, ia memerlukan tatasusunan dengan pasangan nilai kunci yang sepadan . Penyelesaian tersuai menggunakan array_map boleh mencapai hasil yang diingini:
$results = array(); array_map(function($a, $b) use (&$results) { $key = current(array_keys($a)); $a[$key] = array('ip' => $a[$key]); $key = current(array_keys($b)); $b[$key] = array('name' => $b[$key]); $results += array_merge_recursive($a, $b); }, $array1, $array2);
Penjelasan:
Output ialah tatasusunan dengan kekunci yang mewakili nombor dan nilai kamera sebagai sub-tatasusunan yang mengandungi sifat 'ip' dan 'name'.
Dengan memanfaatkan peta_tatasusunan dan manipulasi kunci tersuai, penyelesaian ini menggabungkan tatasusunan dengan kekunci padanan dengan cekap sambil mengekalkan struktur nilai kunci.
Atas ialah kandungan terperinci Bagaimana untuk Menggabungkan Tatasusunan PHP dengan Kekunci Padanan dan Mencipta Sub- Tatasusunan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!