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' ] ];
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; }
Utilisation :
$id = searchForId('100', $userdb);
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'));
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!