×

Recommandés

Guide Complet sur l'Utilisation de date format...
Le traitement des dates est une...
En savoir plus
Afficher des Fichiers PDF depuis une Base...
L'affichage de fichiers PDF sur des...
En savoir plus
PHP Round - Guide détaillé
PHP Round est une fonctionnalité fondamentale...
En savoir plus
PHP Retour à la Ligne : Guide...
Le retour à la ligne est...
En savoir plus
Guide : Différence entre calloc et malloc...
Lorsque vous travaillez en langage C,...
En savoir plus
Fonction trim() en PHP
Dans cet article, nous explorerons en...
En savoir plus

Fusionner deux tableaux en PHP est une opération courante lors du développement d’applications Web ou de scripts. Cela peut être utile dans de nombreuses situations, comme la combinaison de données provenant de différentes sources ou la fusion de deux ensembles de données similaires. Dans cet article, nous allons explorer différentes méthodes pour fusionner des tableaux en PHP.

Utilisation de la fonction array_merge()

La fonction array_merge() en PHP permet de fusionner deux ou plusieurs tableaux en un seul tableau. Voici comment l’utiliser :

$array1 = array("a" => "rouge", "b" => "vert");
$array2 = array("c" => "bleu", "d" => "jaune");

$result = array_merge($array1, $array2);
print_r($result);

Résultat :

Array
(
    [a] => rouge
    [b] => vert
    [c] => bleu
    [d] => jaune
)

array_merge() concatène les éléments des tableaux en un seul tableau. Si deux clés sont identiques, la valeur du tableau passé en premier prévaut.

Utilisation de l’opérateur de fusion (à partir de PHP 7.4)

À partir de PHP 7.4, vous pouvez utiliser l’opérateur de fusion (...) pour fusionner des tableaux de manière concise :

$array1 = ["a" => "rouge", "b" => "vert"];
$array2 = ["c" => "bleu", "d" => "jaune"];

$result = [...$array1, ...$array2];
print_r($result);

Résultat :

Array
(
    [a] => rouge
    [b] => vert
    [c] => bleu
    [d] => jaune
)

L’opérateur de fusion permet de fusionner plusieurs tableaux en un seul sans avoir besoin d’appeler une fonction supplémentaire.

Utilisation de la fonction array_merge_recursive()

Si vous avez des tableaux multidimensionnels et que vous souhaitez fusionner les valeurs de manière récursive, vous pouvez utiliser la fonction array_merge_recursive() :

$array1 = array("fruit" => array("rouge" => "pomme"), "couleur" => "bleu");
$array2 = array("fruit" => array("vert" => "poire"), "couleur" => "jaune");

$result = array_merge_recursive($array1, $array2);
print_r($result);

Résultat :

Array
(
    [fruit] => Array
        (
            [rouge] => pomme
            [vert] => poire
        )

    [couleur] => Array
        (
            [0] => bleu
            [1] => jaune
        )
)

La fonction array_merge_recursive() fusionne récursivement les valeurs des tableaux multidimensionnels tout en préservant les clés existantes.

Voici quelques exemples concrets où la fusion de tableaux en PHP peut être utile :

Gestion des options de configuration

Si vous développez une application avec des options de configuration par défaut mais également avec des options personnalisées définies par l’utilisateur, fusionner ces deux ensembles de configurations peut être utile.

$configDefaults = [
    "debug" => false,
    "language" => "en",
    "cache" => true
];

$userConfig = [
    "debug" => true,
    "language" => "fr"
];

$finalConfig = array_merge($configDefaults, $userConfig);
Traitement de données de formulaires multiples

Lorsque vous traitez des formulaires complexes avec des champs répartis sur plusieurs pages ou sections, vous pouvez fusionner les données de chaque étape dans un tableau global.

$dataStep1 = [
    "name" => "John Doe",
    "email" => "john@example.com"
];

$dataStep2 = [
    "address" => "123 Main St",
    "city" => "Anytown",
    "country" => "USA"
];

$completeData = array_merge($dataStep1, $dataStep2);
Consolidation de données provenant de différentes sources

Supposons que vous ayez des données provenant de plusieurs API ou de différentes bases de données. La fusion de ces données peut vous permettre de les agréger pour une utilisation ultérieure.

$dataFromAPI = [
    "user_count" => 1000,
    "total_sales" => 5000
];

$dataFromDatabase = [
    "product_count" => 500,
    "average_price" => 25
];

$consolidatedData = array_merge($dataFromAPI, $dataFromDatabase);
Gestion des paniers d’achat dans une boutique en ligne

Lorsqu’un utilisateur ajoute des produits à son panier, vous pouvez fusionner les produits déjà présents dans le panier avec les nouveaux produits ajoutés.

$currentCart = [
    ["id" => 1, "name" => "Product A", "price" => 10],
    ["id" => 2, "name" => "Product B", "price" => 15]
];

$newProducts = [
    ["id" => 3, "name" => "Product C", "price" => 20],
    ["id" => 4, "name" => "Product D", "price" => 25]
];

$mergedCart = [...$currentCart, ...$newProducts];

En utilisant la fusion de tableaux dans ces cas pratiques, vous pouvez efficacement combiner des données de sources multiples pour répondre aux besoins de votre application.

Voici quelques cas spéciaux et particuliers où la fusion de tableaux en PHP peut être utile :

Gestion des autorisations utilisateur

Vous pourriez avoir des autorisations définies au niveau du rôle et des autorisations spécifiques définies pour chaque utilisateur. La fusion de ces deux ensembles d’autorisations peut être nécessaire pour déterminer les droits d’accès d’un utilisateur.

$rolePermissions = [
    "admin" => ["create", "read", "update", "delete"],
    "editor" => ["create", "read", "update"],
    "viewer" => ["read"]
];

$userPermissions = [
    "editor" => ["delete"],
    "viewer" => ["comment"]
];

$mergedPermissions = [];
foreach ($rolePermissions as $role => $permissions) {
    if (isset($userPermissions[$role])) {
        $mergedPermissions[$role] = array_merge($permissions, $userPermissions[$role]);
    } else {
        $mergedPermissions[$role] = $permissions;
    }
}
Traitement de données multilingues

Si vous avez des données traduites dans plusieurs langues, vous pourriez avoir besoin de fusionner les traductions pour chaque élément.

$englishTranslations = [
    "welcome" => "Welcome",
    "hello" => "Hello",
    "goodbye" => "Goodbye"
];

$frenchTranslations = [
    "hello" => "Bonjour",
    "goodbye" => "Au revoir",
    "thank_you" => "Merci"
];

$mergedTranslations = array_merge($englishTranslations, $frenchTranslations);
Personnalisation des préférences utilisateur

Si votre application permet aux utilisateurs de définir leurs préférences, vous pourriez fusionner les préférences par défaut avec celles définies par l’utilisateur.

$defaultPreferences = [
    "theme" => "light",
    "language" => "en",
    "notifications" => true
];

$userPreferences = [
    "theme" => "dark",
    "notifications" => false
];

$mergedPreferences = array_merge($defaultPreferences, $userPreferences);
Traitement de données de configuration avancées

Dans certains cas, vous pourriez avoir des configurations avancées stockées dans des fichiers de configuration séparés. La fusion de ces configurations peut être nécessaire pour créer une configuration globale.

$configFile1 = include('config1.php');
$configFile2 = include('config2.php');

$mergedConfig = array_merge($configFile1, $configFile2);

En gérant ces cas spéciaux et particuliers avec la fusion de tableaux en PHP, vous pouvez adapter votre application à des besoins plus complexes et variés, tout en conservant une logique de code claire et concise.

Conclusion

Fusionner des tableaux en PHP peut être accompli de plusieurs manières, en fonction des besoins spécifiques de votre application. Que ce soit avec array_merge(), l’opérateur de fusion ou array_merge_recursive(), vous avez maintenant les outils pour manipuler efficacement vos données et créer des structures de données complexes en PHP. Choisissez la méthode qui convient le mieux à votre cas d’utilisation et profitez de la flexibilité offerte par PHP pour travailler avec des tableaux.

Recommandés

AZ

Share
Published by
AZ

Recent Posts

Modèle Excel de plan de classification des documents administratifs

Les rouages d’une entreprise se jouent rarement sous les projecteurs. Ce qui apparaît à l’extérieur…

12 heures ago

Pages de garde de mémoire utilisées dans les universités françaises

Quand on prépare un mémoire, on consacre souvent l’essentiel de son énergie au plan, à…

14 heures ago

Modèle Excel d’analyse financière automatisée avec graphiques

Dans beaucoup d’entreprises, l’analyse financière commence souvent de la même manière : une pile de…

17 heures ago

Méthodologie SVT : réussir l’analyse de document en SVT

Télécharger une fiche méthode pratique et utile ⬇️ L’analyse de document en SVT fait partie…

22 heures ago

Méthode des points de vue narratifs en 4ème

Introduction En classe de 4ème, l’étude du récit occupe une place importante dans l’apprentissage du…

1 jour ago

Classification des Documents : Organiser et Automatiser la Gestion Documentaire

Télécharger un Modèle Excel de classification des documents avec suivi automatisé ⬇️ Dans toute organisation…

4 jours ago

This website uses cookies.