Zum Inhalt springen

Die PHP-Array-Filter-Funktion: Ein umfassender Leitfaden

Die PHP-Array-Filter-Funktion ist eine integrierte Funktion, die verwendet wird, um Elemente eines Arrays basierend auf einer angegebenen Bedingung zu filtern. Diese Funktion ist besonders nützlich bei der Arbeit mit großen Arrays, wenn Sie bestimmte Elemente extrahieren müssen, die bestimmte Kriterien erfüllen. In diesem Artikel werfen wir einen detaillierten Blick auf die PHP-Array-Filter-Funktion und wie sie Ihren Programmierprozess vereinfachen kann.

Wie funktioniert die Array-Filter-Funktion?

Die PHP-Array-Filter-Funktion funktioniert, indem sie über die Elemente eines Arrays iteriert und eine Callback-Funktion auf jedes Element anwendet. Diese Callback-Funktion ist eine benutzerdefinierte Funktion, die Sie bereitstellen, und sie bestimmt, ob ein Element in das endgültige gefilterte Array aufgenommen werden soll. Wenn die Callback-Funktion für ein bestimmtes Element true zurückgibt, wird dieses Element in das gefilterte Array aufgenommen, andernfalls wird es ausgeschlossen.

Die Syntax der Array-Filter-Funktion

Die grundlegende Syntax der PHP-Array-Filter-Funktion lautet wie folgt:

PHP array_filter syntax

php
array_filter(array, callback)
  • array ist das Array, das Sie filtern möchten.
  • callback ist die benutzerdefinierte Funktion, die Sie bereitstellen, um zu bestimmen, welche Elemente in das gefilterte Array aufgenommen werden sollen.

Verwenden der Array-Filter-Funktion mit einer benutzerdefinierten Callback-Funktion

Einer der häufigsten Anwendungsfälle für die PHP-Array-Filter-Funktion ist das Filtern eines Arrays basierend auf einer benutzerdefinierten Bedingung. Dazu müssen Sie eine benutzerdefinierte Callback-Funktion bereitstellen, die für Elemente, die in das gefilterte Array aufgenommen werden sollen, true und für Elemente, die ausgeschlossen werden sollen, false zurückgibt.

Hier ist ein Beispiel, das ein Array von Zahlen filtert, um nur gerade Zahlen einzuschließen:

PHP Example of array_filter function usage

php
<?php

$numbers = [1, 2, 3, 4, 5, 6];

$evenNumbers = array_filter($numbers, function($number) {
    return ($number % 2 == 0);
});

print_r($evenNumbers);

?>

Ausgabe:


console
Array ( [1] => 2 [3] => 4 [5] => 6 )

Verwenden der Array-Filter-Funktion mit integrierten Callback-Funktionen

Zusätzlich zur Verwendung einer benutzerdefinierten Callback-Funktion können Sie auch eine der integrierten Callback-Funktionen verwenden, die in PHP verfügbar sind. Beispielsweise können Sie die Funktion is_numeric verwenden, um nur numerische Werte in einem gefilterten Array einzuschließen:

PHP use array_filter function to filter only numeric values

php
<?php

$mixed = [1, '2', 'three', 4, 5];

$onlyNumbers = array_filter($mixed, 'is_numeric');

print_r($onlyNumbers);

?>

Ausgabe:


console
Array ( [0] => 1 [1] => 2 [3] => 4 [4] => 5 )

Ablaufdiagramm der Array-Filter-Funktion

Fazit

Die PHP-Array-Filter-Funktion ist ein leistungsstarkes Werkzeug zum Filtern von Array-Elementen basierend auf einer angegebenen Bedingung. Egal, ob Sie eine benutzerdefinierte Callback-Funktion oder eine der integrierten Funktionen verwenden – diese Funktion macht es einfach, bestimmte Elemente aus einem Array zu extrahieren und Ihren Programmierprozess zu vereinfachen. Wenn Sie also in PHP mit Arrays arbeiten, sollten Sie die Array-Filter-Funktion auf jeden Fall in Ihr Werkzeugset aufnehmen!

Praxis

Was macht die array_filter()-Funktion in PHP?

Finden Sie das nützlich?

Dual-run-Vorschau — vergleichen Sie mit den Symfony-Routen live.