Maison >développement back-end >tutoriel php >Comment puis-je fusionner efficacement deux tableaux PHP 2D basés sur une colonne partagée à l'aide de fonctions natives ?
Fusionner efficacement des tableaux 2D basés sur des valeurs de colonnes partagées à l'aide de fonctions PHP natives
Fusionner efficacement plusieurs tableaux est une tâche courante dans la programmation PHP. Cet article explore une solution optimale pour fusionner deux tableaux 2D basés sur une valeur de colonne partagée sans recourir à des boucles imbriquées ou à des procédures complexes.
Étant donné deux exemples de tableaux :
$array1 = [ ['rank' => '579', 'id' => '1'], ['rank' => '251', 'id' => '2'], ]; $array2 = [ ['size' => 'S', 'status' => 'A', 'id' => '1'], ['size' => 'L', 'status' => 'A', 'id' => '2'], ];
L'objectif est de fusionner ces tableaux dans un nouveau tableau qui combine les valeurs de chaque tableau en fonction de l'identifiant correspondant valeurs :
$mergedArray = [ ['size' => 'S', 'status' => 'A', 'id' => '1', 'rank' => '579'], ['size' => 'L', 'status' => 'A', 'id' => '2', 'rank' => '251'], ];
Utilisation des fonctions natives de tableau PHP
Pour faciliter ce processus de fusion, PHP fournit deux fonctions natives :
Exemple de code utilisant array_merge_recursive() :
$mergedArray = array_merge_recursive($array1, $array2);
Exemple de code utilisant my_array_merge():
function my_array_merge(array &$array1, array &$array2) { $result = []; foreach ($array1 as $key => &$value) { $result[$key] = array_merge($value, $array2[$key]); } return $result; } $mergedArray = my_array_merge($array1, $array2);
Les deux méthodes fusionnent efficacement les deux tableaux, produisant le résultat souhaité. Le choix de la fonction dépend des exigences de performances spécifiques et des préférences de clarté du code du développeur.
Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!