Fonctions de regroupement de clés de tableau PHP et guide d'application

WBOY
Libérer: 2024-04-30 10:36:01
original
966 Les gens l'ont consulté

La fonction de regroupement de clés de tableau PHP peut classer les clés de tableau selon des règles spécifiées pour l'agrégation, le filtrage et la transformation des données. Les fonctions intégrées incluent array_column(), array_combine() et array_group_by(). Par exemple, vous pouvez organiser et traiter efficacement les données du tableau en regroupant les commandes par ID utilisateur ou en filtrant les clés par suffixe.

PHP 数组按键分组的函数和应用指南

Guide des fonctions et des applications du regroupement de clés de tableau PHP

Le regroupement de clés de tableau est une fonctionnalité puissante de PHP qui vous permet de regrouper les clés de tableau selon des règles personnalisées. Ceci est utile dans de nombreux scénarios du monde réel, tels que :

  • Agrégation de données : Agréger les données dans un tableau en fonction de la même clé.
  • Filtrage des données : Filtrez les données avec une clé spécifique dans le tableau en fonction des conditions.
  • Transformation des données : Regroupez les clés du tableau en d'autres paires clé-valeur.

Fonctions de regroupement intégrées

PHP fournit les fonctions intégrées suivantes pour implémenter le regroupement de clés de tableau :

  • array_column() : Extrayez les données de la colonne spécifiée (clé). array_column():提取指定列(按键)的数据。
  • array_combine():将两个数组的键值对合并成一个新数组。
  • array_group_by():将数组按给定的键分组(PHP 8.1 引入)。

实战案例

案例 1:按照用户 ID 分组订单

$orders = [
    ['user_id' => 1, 'product_id' => 1, 'quantity' => 2],
    ['user_id' => 1, 'product_id' => 2, 'quantity' => 3],
    ['user_id' => 2, 'product_id' => 3, 'quantity' => 1],
];

$groupedOrders = array_group_by($orders, 'user_id');
Copier après la connexion

执行后,$groupedOrders 将是一个多维数组,其中每个元素都是一个包含相同用户 ID 的订单数组:

[
    1 => [
        ['user_id' => 1, 'product_id' => 1, 'quantity' => 2],
        ['user_id' => 1, 'product_id' => 2, 'quantity' => 3],
    ],
    2 => [
        ['user_id' => 2, 'product_id' => 3, 'quantity' => 1],
    ],
]
Copier après la connexion

案例 2:过滤具有特定后缀的密钥

$settings = [
    'site.title' => 'My Site',
    'site.description' => 'A great website',
    'user.name' => 'John Doe',
];

$filteredSettings = array_filter($settings, function($key) {
    return strpos($key, '.site') !== false;
});
Copier après la connexion

执行后,$filteredSettings 将包含仅带有.site

array_combine() : Combinez les paires clé-valeur de deux tableaux dans un nouveau tableau.

array_group_by() : Regroupez le tableau par la clé donnée (introduite dans PHP 8.1).

🎜Cas pratique🎜🎜🎜Cas 1 : Regrouper les commandes par ID utilisateur🎜🎜
[
    'site.title' => 'My Site',
    'site.description' => 'A great website',
]
Copier après la connexion
🎜Après exécution, $groupedOrders sera un tableau multidimensionnel, où chaque élément est un tableau contenant le même utilisateur Tableau d'ordre d'ID : 🎜rrreee🎜🎜Cas 2 : Filtrer les clés avec le suffixe spécifique 🎜🎜rrreee🎜Après l'exécution, $filteredSettings contiendra uniquement les clés avec le suffixe .site Paramètres de clé : 🎜rrreee🎜Résumé🎜🎜L'utilisation de la fonction de regroupement de clés de tableau peut organiser et traiter les données du tableau facilement et efficacement. En choisissant les bonnes fonctions et en appliquant des règles personnalisées, vous pouvez manipuler les tableaux de manière flexible en fonction de vos besoins spécifiques. 🎜

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!

Étiquettes associées:
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!