Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich effizient nach einem Wert suchen und seinen Schlüssel in einem mehrdimensionalen PHP-Array abrufen?

Wie kann ich effizient nach einem Wert suchen und seinen Schlüssel in einem mehrdimensionalen PHP-Array abrufen?

Susan Sarandon
Susan SarandonOriginal
2025-01-04 01:06:39984Durchsuche

How Can I Efficiently Search for a Value and Retrieve Its Key in a PHP Multidimensional Array?

PHP Multidimensional Array Search by Value

Problem:

Gegeben ein mehrdimensionales Array, wie Können Sie effizient nach einem bestimmten Wert (z. B. einer Benutzer-ID) suchen und das entsprechende Array abrufen? Schlüssel?

Lösung:

Im Folgenden finden Sie zwei Ansätze, um in einem mehrdimensionalen Array nach einem Wert zu suchen und seinen Schlüssel zu erhalten:

Methode 1: Schleifen verwenden

function search_by_uid($id, $array) {
    foreach ($array as $key => $val) {
        if ($val['uid'] === $id) {
            return $key;
        }
    }
    return null;
}

Methode 2: Verwenden von array_search mit array_column (PHP 5.5.0 und höher)

$key = array_search('100', array_column($userdb, 'uid'));

Aufrufen der Funktionen:

Um diese Funktionen zu verwenden:

  • Methode 1:

    • $key = search_by_uid('100', $userdb);
  • Methode 2:

    • $key = array_search('100', array_column($userdb, 'uid'));

Die Variable $key enthält den Array-Schlüssel des gefundenen Werts (oder null, wenn nicht gefunden).

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

Stellungnahme:
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