Maison > développement back-end > tutoriel php > Comment trouver la clé d'une valeur spécifique dans un tableau multidimensionnel ?

Comment trouver la clé d'une valeur spécifique dans un tableau multidimensionnel ?

Mary-Kate Olsen
Libérer: 2024-12-11 05:57:13
original
588 Les gens l'ont consulté

How to Find the Key for a Specific Value in a Multidimensional Array?

Clé d'identification pour une valeur de tableau spécifique

Lorsqu'il s'agit de tableaux multidimensionnels, il devient nécessaire de rechercher des valeurs spécifiques et de récupérer les clés correspondantes . Dans ce scénario, nous visons à trouver la clé d'une valeur donnée dans un tableau multidimensionnel.

Recherche de tableau à l'aide de array_search()

Une approche pour rechercher des tableaux consiste à utilisez la fonction array_search(), disponible dans les versions PHP 5.5.0 et supérieures. Cette fonction nécessite deux arguments : la valeur cible et un tableau dans lequel effectuer la recherche. Il renvoie la clé associée à la valeur cible si elle est trouvée, ou FALSE dans le cas contraire.

Exemple

Considérons le tableau multidimensionnel suivant :

$products = [
    1 => [
        'slug' => 'breville-one-touch-tea-maker-BTM800XL',
        'name' => 'The Breville One-Touch Tea Maker',
    ],
    2 => [
        'slug' => 'breville-variable-temperature-kettle-BKE820XL',
        'name' => 'Breville Variable-Temperature Kettle BKE820XL',
    ],
];
Copier après la connexion

Pour rechercher la clé associée au slug breville-one-touch-tea-maker-BTM800XL :

$key = array_search('breville-one-touch-tea-maker-BTM800XL', array_column($products, 'slug'));
Copier après la connexion

La fonction array_column() est utilisée pour extraire les valeurs « slug » de chaque sous-tableau dans un tableau unidimensionnel, permettant à array_search() fonction pour effectuer la recherche efficacement.

Solution alternative utilisant array_search_multidim()

Pour une solution autonome, vous pouvez définir une fonction personnalisée comme :

function array_search_multidim($array, $column, $key) {
    return (array_search($key, array_column($array, $column)));
}
Copier après la connexion

Cette fonction vous permet de passer le tableau multidimensionnel, le nom de la colonne à rechercher à l'intérieur (par exemple, « slug ») et la cible valeur.

Exemple

$key = array_search_multidim($products, 'slug', 'breville-one-touch-tea-maker-BTM800XL');
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!

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