Heim  >  Artikel  >  Backend-Entwicklung  >  So finden Sie in PHP mehrere Werte in einem Array und geben die entsprechenden Schlüsselnamen zurück

So finden Sie in PHP mehrere Werte in einem Array und geben die entsprechenden Schlüsselnamen zurück

王林
王林Original
2023-07-08 08:48:091094Durchsuche

So finden Sie mehrere Werte in einem Array und geben den entsprechenden Schlüsselnamen in PHP zurück

Bei der PHP-Entwicklung stoßen wir häufig auf Situationen, in denen wir mehrere Werte in einem Array finden und den Schlüsselnamen des entsprechenden Werts ermitteln müssen . In diesem Artikel wird eine Methode zum Erreichen dieser Funktion vorgestellt und entsprechende Codebeispiele bereitgestellt.

Schauen wir uns zunächst die Struktur des gesuchten Arrays an. Angenommen, wir haben ein assoziatives Array, das einige Benutzerinformationen wie Benutzername, Alter und Geschlecht speichert. Ein Beispiel ist wie folgt:

$user_info = array(
    'john' => array(
        'age' => 25,
        'gender' => 'male'
    ),
    'amy' => array(
        'age' => 32,
        'gender' => 'female'
    ),
    'peter' => array(
        'age' => 28,
        'gender' => 'male'
    ),
    'susan' => array(
        'age' => 30,
        'gender' => 'female'
    )
);

Angenommen, wir müssen Benutzer finden, deren Alter 32 Jahre beträgt und deren Geschlecht weiblich ist. Wir möchten den Schlüsselnamen des Benutzers erhalten, der „amy“ ist. Das Folgende ist ein Codebeispiel zur Implementierung dieser Funktion:

function searchUser($array, $conditions) {
    foreach ($array as $key => $value) {
        $match = 0;
        foreach ($conditions as $condition_key => $condition_value) {
            if ($value[$condition_key] == $condition_value) {
                $match++;
            }
        }
        if ($match == count($conditions)) {
            return $key;
        }
    }
    return null;
}

$conditions = array(
    'age' => 32,
    'gender' => 'female'
);

$result = searchUser($user_info, $conditions);

if ($result) {
    echo "找到匹配的用户,键名为:" . $result;
} else {
    echo "未找到匹配的用户";
}

Im obigen Code definieren wir eine Funktion namens searchUser, die zwei Parameter akzeptiert: das zu durchsuchende Array und die Suchbedingungen. searchUser的函数,该函数接受两个参数:要查找的数组和查找条件。

在函数内部,我们使用了两层嵌套的循环。外层循环遍历数组的每个元素,内层循环遍历查找条件数组中的每个条件。

在内层循环中,我们比较数组中对应键的值是否和当前查找条件相等。如果相等,我们增加一个计数器$match的值。如果$match的值等于查找条件数组的长度,说明所有条件都匹配,我们返回当前循环的键名。

如果没有找到匹配的用户,我们最终返回null

在主程序中,我们定义了一个查找条件数组$conditions,然后调用searchUser

Innerhalb der Funktion verwenden wir zwei Ebenen verschachtelter Schleifen. Die äußere Schleife durchläuft jedes Element des Arrays und die innere Schleife durchläuft jede Bedingung im Suchbedingungsarray.

In der inneren Schleife vergleichen wir, ob der Wert des entsprechenden Schlüssels im Array gleich der aktuellen Suchbedingung ist. Wenn sie gleich sind, erhöhen wir einen Zähler $match. Wenn der Wert von $match gleich der Länge des Suchbedingungsarrays ist, bedeutet dies, dass alle Bedingungen erfüllt sind und wir den Schlüsselnamen der aktuellen Schleife zurückgeben.


Wenn kein passender Benutzer gefunden wird, geben wir schließlich null zurück.

🎜Im Hauptprogramm definieren wir ein Suchbedingungsarray $conditions und rufen dann die Funktion searchUser auf, um passende Benutzer zu finden. Basierend auf den zurückgegebenen Ergebnissen geben wir schließlich die entsprechenden Eingabeaufforderungsinformationen aus. 🎜🎜Mit dem obigen Codebeispiel können wir die Funktion implementieren, mehrere Werte in einem Array zu finden und die entsprechenden Schlüsselnamen zurückzugeben. 🎜🎜Zusammenfassung: 🎜In der PHP-Entwicklung müssen wir manchmal mehrere Werte in einem Array finden und die entsprechenden Schlüsselnamen zurückgeben. Durch die Verwendung einer Doppelschleife und geeigneter Beurteilungsbedingungen können wir diese Funktionalität erreichen. Das obige Codebeispiel stellt eine Implementierungsmethode als Referenz und Verwendung bereit. Ich hoffe, dass dieser Artikel allen bei der PHP-Array-Suche hilfreich sein wird. 🎜

Das obige ist der detaillierte Inhalt vonSo finden Sie in PHP mehrere Werte in einem Array und geben die entsprechenden Schlüsselnamen zurück. 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