Heim > Backend-Entwicklung > PHP-Tutorial > Wie kann ich effizient nach einem Wert in einem mehrdimensionalen PHP-Array suchen?

Wie kann ich effizient nach einem Wert in einem mehrdimensionalen PHP-Array suchen?

Patricia Arquette
Freigeben: 2024-12-29 14:54:11
Original
186 Leute haben es durchsucht

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

PHP-Multidimensional-Array-Suche nach Wert für höhere Effizienz

Die Suche nach einem bestimmten Wert innerhalb eines mehrdimensionalen PHP-Arrays kann eine zeitaufwändige Aufgabe sein , insbesondere bei großen Arrays. In diesem Artikel wird eine effiziente Lösung für diese Herausforderung vorgestellt.

Suche nach Benutzer-ID (uid) in einer Benutzerdatenbank

Betrachten Sie das folgende 2D-Benutzerdatenbank-Array:

$userdb = [
    [
        'uid' => '100',
        'name' => 'Sandra Shush',
        'pic_square' => 'urlof100'
    ],
    [
        'uid' => '5465',
        'name' => 'Stefanie Mcmohn',
        'pic_square' => 'urlof100'
    ],
    [
        'uid' => '40489',
        'name' => 'Michael',
        'pic_square' => 'urlof40489'
    ]
];
Nach dem Login kopieren

Das Ziel besteht darin, nach einer bestimmten UID zu suchen und den entsprechenden Array-Schlüssel zurückzugeben. Beispielsweise sollte search_by_uid(100) 0 zurückgeben.

Effiziente Suche mit einer benutzerdefinierten Funktion

Die folgende benutzerdefinierte Funktion ermöglicht eine schnellere Suche als die Verwendung Schleifen:

function searchForId($id, $array) {
    foreach ($array as $key => $val) {
        if ($val['uid'] === $id) {
            return $key;
        }
    }
    return null;
}
Nach dem Login kopieren

Verwendung:

$id = searchForId('100', $userdb);
Nach dem Login kopieren

Einzeiler für PHP >= 5.5.0

In PHP >= 5.5.0 können Sie einen Einzeiler verwenden, um ein Array zu durchsuchen Spalte:

$key = array_search('100', array_column($userdb, 'uid'));
Nach dem Login kopieren

Fazit

Diese Suchmethoden verbessern die Effizienz beim Suchen von Werten in mehrdimensionalen PHP-Arrays erheblich und bieten eine schnellere Ausführungszeit im Vergleich zu manuellen Schleifenmethoden.

Das obige ist der detaillierte Inhalt vonWie kann ich effizient nach einem Wert in einem mehrdimensionalen PHP-Array suchen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn
Neueste Artikel des Autors
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage