Heim  >  Artikel  >  Backend-Entwicklung  >  So implementieren Sie die Filterung mit mehreren Bedingungen in PHP-Arrays (drei Methoden)

So implementieren Sie die Filterung mit mehreren Bedingungen in PHP-Arrays (drei Methoden)

PHPz
PHPzOriginal
2023-04-11 09:16:301705Durchsuche

PHP-Array ist eine sehr leistungsstarke Datenstruktur, die die Datenspeicherung einfacher und effizienter macht. Beim Schreiben von PHP-Programmen ist es häufig erforderlich, Arrays mit mehreren Bedingungen zu filtern. In diesem Artikel wird erläutert, wie Sie die Filterung mit mehreren Bedingungen in PHP-Arrays implementieren.

1. PHP-Arrays verstehen

Bevor Sie PHP-Arrays verwenden, müssen Sie die grundlegende Struktur und Definitionsmethode von PHP-Arrays verstehen. Ein Array ist eine einfache Datenstruktur, die mehrere Werte in einer einzigen Variablen speichern kann. In PHP können Arrays mit den folgenden zwei Methoden definiert werden:

  1. Mit der Funktion array()

Mit der Funktion array() ein Array zu definieren ist sehr einfach, geben Sie einfach die Werte in Klammern ein. Der folgende Code erstellt beispielsweise ein Array mit drei Elementen:

$my_array = array('apple', 'banana', 'orange');
  1. Verwenden der []-Notation

Ab PHP 5.4 können Sie die []-Notation zum Definieren von Arrays verwenden. Zum Beispiel:

$my_array = ['apple', 'banana', 'orange'];

Mit den beiden oben genannten Methoden kann ein Array erstellt und initialisiert werden. Als nächstes besprechen wir, wie man PHP-Arrays für die Filterung mit mehreren Bedingungen verwendet.

2. Multi-Bedingungsfilterung implementieren

Bei der PHP-Programmentwicklung ist es notwendig, Elemente im Array nach verschiedenen Bedingungen zu filtern. Sortieren Sie beispielsweise eine Reihe von Schülerergebnissen nach verschiedenen Fächern, geben Sie nur die bestandenen Ergebnisse aus usw. Im Folgenden werden häufig verwendete Filtermethoden mit mehreren Bedingungen vorgestellt.

  1. Verwenden Sie die foreach-Schleife zum Filtern

Die Verwendung der foreach-Schleife ist die grundlegendste Filtermethode mit mehreren Bedingungen. Durchlaufen Sie die Elemente im Array und filtern Sie basierend auf Bedingungen. Beispielsweise filtert der folgende Code basierend auf Themen und Bewertungen:

$scores = array(
    array('name' => 'Tom', 'subject' => 'Math', 'score' => 80),
    array('name' => 'Jerry', 'subject' => 'English', 'score' => 70),
    array('name' => 'Bob', 'subject' => 'Math', 'score' => 90),
    array('name' => 'Alice', 'subject' => 'English', 'score' => 60),
);
 
foreach ($scores as $score) {
    if ($score['subject'] == 'Math' && $score['score'] >= 80) {
        echo $score['name'] . ' passed Math with score ' . $score['score'] . "<br />";
    }
}

Im obigen Beispiel wird eine foreach-Schleife verwendet, um ein Array mit dem Namen $scores zu durchlaufen und die Elemente auszugeben, die die Kriterien erfüllen.

  1. Verwenden Sie die Funktion array_filter

Die Funktion array_filter ist eine sehr leistungsstarke Funktion in PHP, die Elemente in einem Array basierend auf angegebenen Bedingungen filtern kann. Der folgende Code verwendet beispielsweise die Funktion array_filter, um Themen und Bewertungen zu filtern:

$scores = array(
    array('name' => 'Tom', 'subject' => 'Math', 'score' => 80),
    array('name' => 'Jerry', 'subject' => 'English', 'score' => 70),
    array('name' => 'Bob', 'subject' => 'Math', 'score' => 90),
    array('name' => 'Alice', 'subject' => 'English', 'score' => 60),
);
 
$result = array_filter($scores, function($score) {
    return ($score['subject'] == 'Math' && $score['score'] >= 80);
});
 
print_r($result);

Im obigen Beispiel wird die Funktion array_filter verwendet, um das Array $scores zu filtern und Elemente zurückzugeben, die die Bedingungen erfüllen.

  1. Verwenden der Funktion array_reduce

Die Funktion array_reduce ist eine weitere sehr nützliche Funktion in PHP, die Elemente in einem Array akkumulieren oder berechnen kann. Der folgende Code verwendet beispielsweise die Funktion array_reduce, um Themen und Bewertungen zu filtern und die Gesamtpunktzahl zu berechnen:

$scores = array(
    array('name' => 'Tom', 'subject' => 'Math', 'score' => 80),
    array('name' => 'Jerry', 'subject' => 'English', 'score' => 70),
    array('name' => 'Bob', 'subject' => 'Math', 'score' => 90),
    array('name' => 'Alice', 'subject' => 'English', 'score' => 60),
);
 
$result = array_reduce($scores, function($total, $score) {
    if ($score['subject'] == 'Math' && $score['score'] >= 80) {
        $total += $score['score'];
    }
    return $total;
}, 0);
 
echo $result;

Im obigen Beispiel wird die Funktion array_reduce verwendet, um das Array $scores zu filtern und die Gesamtpunktzahl der Elemente zu berechnen, die übereinstimmen die Bedingungen.

3. Zusammenfassung

Das Obige stellt mehrere Methoden zum Implementieren der Filterung mit mehreren Bedingungen in PHP-Arrays vor, einschließlich der Verwendung der foreach-Schleife, der Funktion array_filter und der Funktion array_reduce. Je nach Anwendungsszenario kann die Wahl der geeigneten Methode die Datenabfrage einfacher und effizienter machen. Natürlich können im eigentlichen Entwicklungsprozess auch andere Methoden zum Multi-Condition-Screening kombiniert werden, um bessere Ergebnisse zu erzielen.

Das obige ist der detaillierte Inhalt vonSo implementieren Sie die Filterung mit mehreren Bedingungen in PHP-Arrays (drei Methoden). 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