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
465 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!

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