So führen Sie eine Abfrage basierend auf einem Array in PHP durch

PHPz
Freigeben: 2023-04-23 17:10:14
Original
1115 Leute haben es durchsucht

In PHP ist Array eine sehr häufige Datenstruktur. Wir müssen häufig Abfragen basierend auf bestimmten Werten im Array durchführen, z. B. die Position eines Elements im Array ermitteln, den Positionsbereich ermitteln, der von bestimmten Elementen im Array eingenommen wird usw. In diesem Artikel wird erläutert, wie eine Abfrage basierend auf Arrays durchgeführt wird.

1. Finden Sie die Position eines Elements in einem Array.

In PHP können wir die Funktion array_search() verwenden, um die Position eines bestimmten Elements in einem Array zu finden. Diese Funktion akzeptiert zwei Parameter: das zu findende Element und das Array. Wenn das angegebene Element gefunden wird, wird der Schlüsselname des Elements im Array zurückgegeben; andernfalls wird false zurückgegeben.

Zum Beispiel haben wir ein Array $numbers = array(1,2,3,4,5,6,7,8,9); und wir möchten die Position der Zahl 5 im Array finden, wir kann den folgenden Code verwenden:

$key = array_search(5, $numbers);

echo $key; // Ausgabe 4

2. Wenn es doppelte Elemente gibt Im Array müssen wir möglicherweise alle Positionen des Elements im Array finden. PHP bietet die Funktion array_keys(), die alle Schlüssel des angegebenen Elements im Array zurückgeben kann.

Das Folgende ist ein Beispiel. Angenommen, wir haben ein Array $fruits = array("apple", "banana", "orange", "apple", "orange", "grape");, wir möchten alle finden. orange" "An der Position im Array können Sie den folgenden Code verwenden:

$keys = array_keys($fruits, "orange");

print_r($keys); // Ausgabearray ( [0] => ; 2 [1] => 4)

Dieser Code gibt ein Array aus, das alle Schlüsselnamen von „orange“ im Array enthält.

3. Finden Sie die Position von Elementen in einem zweidimensionalen Array

Neben eindimensionalen Arrays unterstützt PHP auch zweidimensionale Arrays. Wenn wir die Position eines Elements in einem zweidimensionalen Array ermitteln möchten, müssen wir eine andere Methode verwenden. Wir können das gesamte Array durchlaufen und herausfinden, ob jedes Element die Anforderungen erfüllt. Das Folgende ist ein Beispielcode:

$users = array(

array("name" => "Tom", "age" => 20),

array("name" => "Jerry", " age " => 25),
array("name" => "Mike", "age" => 30)
);

function findUser($users, $name) {

foreach ($users as $ key => $user) {

if ($user["name"] == $name) { return $key; }
Nach dem Login kopieren

} return false;

}

$key = findUser($users, "Jerry");

echo $key; // Ausgabe 1

Dieser Code wird ausgegeben ein Array Der Schlüsselname des Elements mit dem Namen „Jerry“.

4. Finden Sie alle Elemente, die die Bedingungen im zweidimensionalen Array erfüllen.

Wenn Sie alle Elemente finden möchten, die die Bedingungen im zweidimensionalen Array erfüllen, können wir die Funktion array_filter() verwenden. Diese Funktion akzeptiert zwei Parameter: das zu filternde Array und die Rückruffunktion. Die Rückruffunktion sollte „true“ oder „false“ zurückgeben, um anzuzeigen, ob das aktuelle Element die Anforderungen erfüllt. Das Folgende ist ein Beispielcode:

$users = array(

array("name" => "Tom", "age" => 20),

array("name" => "Jerry", " Alter " => 25),
Array("name" => "Mike", "Alter" => 30),
Array("Name" => "Alice", "Alter" => 20 )
);

function findUsers($users, $age) {

return array_filter($users, function($user) use ($age) {

return $user["age"] == $age;
Nach dem Login kopieren

});}


$matchingUsers = findUsers($ Benutzer , 20);

print_r($matchingUsers);

Dieser Code gibt alle Elemente mit einem Alter von 20 aus.

Zusammenfassung

In PHP können wir einige integrierte Funktionen verwenden, um Abfragen basierend auf Arrays durchzuführen. array_search(), array_keys() und array_filter() sind die am häufigsten verwendeten Funktionen und können die Anforderungen der meisten Situationen erfüllen. Wenn Sie Elemente in einem mehrdimensionalen Array finden müssen, müssen Sie möglicherweise selbst einen Traversalcode schreiben, um dies zu erreichen.

Das obige ist der detaillierte Inhalt vonSo führen Sie eine Abfrage basierend auf einem Array in PHP durch. 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 Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage
Über uns Haftungsausschluss Sitemap
Chinesische PHP-Website:Online-PHP-Schulung für das Gemeinwohl,Helfen Sie PHP-Lernenden, sich schnell weiterzuentwickeln!