Maison > développement back-end > tutoriel php > Comment puis-je rechercher efficacement une valeur dans un tableau PHP multidimensionnel ?

Comment puis-je rechercher efficacement une valeur dans un tableau PHP multidimensionnel ?

Patricia Arquette
Libérer: 2024-12-29 14:54:11
original
186 Les gens l'ont consulté

How Can I Efficiently Search for a Value in a Multidimensional PHP Array?

Recherche de tableau multidimensionnel PHP par valeur pour une efficacité accrue

La recherche d'une valeur particulière dans un tableau PHP multidimensionnel peut être une tâche fastidieuse , surtout avec de grands tableaux. Cet article présente une solution efficace à ce défi.

Recherche par ID utilisateur (uid) dans une base de données utilisateur

Considérez le tableau de base de données utilisateur 2D suivant :

$userdb = [
    [
        'uid' => '100',
        'name' => 'Sandra Shush',
        'pic_square' => 'urlof100'
    ],
    [
        'uid' => '5465',
        'name' => 'Stefanie Mcmohn',
        'pic_square' => 'urlof100'
    ],
    [
        'uid' => '40489',
        'name' => 'Michael',
        'pic_square' => 'urlof40489'
    ]
];
Copier après la connexion

Le but est de rechercher un uid spécifique et de renvoyer sa clé de tableau correspondante. Par exemple, search_by_uid(100) devrait renvoyer 0.

Recherche efficace à l'aide d'une fonction personnalisée

La fonction personnalisée suivante permet une recherche plus rapide que l'utilisation boucles :

function searchForId($id, $array) {
    foreach ($array as $key => $val) {
        if ($val['uid'] === $id) {
            return $key;
        }
    }
    return null;
}
Copier après la connexion

Utilisation :

$id = searchForId('100', $userdb);
Copier après la connexion

One-Liner pour PHP >= 5.5.0

En PHP >= 5.5.0, vous pouvez utiliser une seule ligne pour rechercher un tableau column :

$key = array_search('100', array_column($userdb, 'uid'));
Copier après la connexion

Conclusion

Ces méthodes de recherche améliorent considérablement l'efficacité de la recherche de valeurs dans des tableaux PHP multidimensionnels, offrant un temps d'exécution plus rapide par rapport aux méthodes de bouclage manuel.

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