Maison > développement back-end > tutoriel php > Comment fusionner deux tableaux avec des paires clé-valeur en un seul tableau en PHP ?

Comment fusionner deux tableaux avec des paires clé-valeur en un seul tableau en PHP ?

Susan Sarandon
Libérer: 2024-12-15 07:17:10
original
674 Les gens l'ont consulté

How to Merge Two Arrays with Key-Value Pairs into a Single Array in PHP?

Fusionner les données de lignes de plusieurs tableaux

La fusion des données de plusieurs tableaux en une seule structure cohérente peut être une tâche de programmation courante. Cette question explore un scénario dans lequel deux tableaux doivent être fusionnés pour produire un nouveau tableau avec des attributs spécifiques.

Le premier tableau contient deux éléments, chacun constitué d'une paire clé-valeur « valeur_gross » et « quantité » . Le deuxième tableau contient également deux éléments, chacun constitué d'une paire clé-valeur "item_title_id" et d'une paire clé-valeur "order_id".

Le but est de fusionner ces tableaux dans un nouveau tableau où chaque élément combine toutes les clés- paires de valeurs des deux tableaux d’origine. Le tableau résultant doit avoir quatre paires clé-valeur : "gross_value", "quantity", "item_title_id" et "order_id".

Solution

L'approche recommandée pour réaliser cette fusion consiste à l'utilisation de la fonction array_merge_recursive. Cette fonction prend plusieurs tableaux en entrée et fusionne récursivement leurs valeurs.

Pour préparer la fusion, les touches numériques des deux tableaux sont converties en chaînes, garantissant qu'elles deviennent des tableaux associatifs. Le code suivant le démontre :

$ar1 = [
    ['gross_value' => '100', 'quantity' => '1'],
    ['gross_value' => '200', 'quantity' => '1']
];

$ar2 = [
    ['item_title_id' => '1', 'order_id' => '4'],
    ['item_title_id' => '2', 'order_id' => '4']
];

$ar1 = array_map('array_values', $ar1);
$ar2 = array_map('array_values', $ar2);
Copier après la connexion

Après avoir converti les tableaux, ils peuvent être fusionnés à l'aide de array_merge_recursive :

$result = array_merge_recursive($ar1, $ar2);
print_r($result);
Copier après la connexion

Ce code fusionnera les paires clé-valeur des deux tableaux, produisant le résultat souhaité :

[
    ['gross_value' => '100', 'quantity' => '1', 'item_title_id' => '1', 'order_id' => 4],
    ['gross_value' => '200', 'quantity' => '1', 'item_title_id' => '2', 'order_id' => 4]
]
Copier après la connexion

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!

source:php.cn
Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal