PHP Array_filter -Funktion

PHP Array_filter -Funktion
Die Daten des Arrays können durch Iterieren der Array -Elemente mit der Schleife in PHP gefiltert werden. Diese Aufgabe kann sehr einfach mit der Funktion array_filter () erledigt werden. Die benutzerdefinierte Rückruffunktion wird in dieser Funktion verwendet, um die Daten zu filtern. Das von dieser Funktion zurückgegebene Array bewahrte den Schlüssel des ursprünglichen Arrays bei. In diesem Tutorial wurden verschiedene Verwendungen der Funktion array_filter () gezeigt.

Syntax:
Die Syntax des Array_Filter () ist unten angegeben.

Array Array_filter ($ Array, $ callback_function, $ flag)

  • Das erste Argument der Funktion ist obligatorisch und enthält ein Array und wird zum Filtern verwendet.
  • Das zweite Argument ist optional und es handelt sich um eine Rückruffunktion, die zum Filtern der Array -Daten verwendet wird.
  • Das dritte Argument ist optional und kann zwei Arten von Werten speichern. Ein Wert ist array_filter_use_key, der die Taste des Arrays als Argument in der Rückruffunktion übergibt. Ein weiterer Wert kann Array_filter_use_both sein, der sowohl den Schlüssel als auch den Wert als Argument der Rückruffunktion übergibt.
  • Es gibt das gefilterte Array zurück.

Im nächsten Teil des Tutorials wurden verschiedene Verwendungen von arrray_filter () -Funktionen gezeigt.

Beispiel 1: Filtern Sie ein numerisches Array

Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um die Array -Werte basierend auf einer Bedingung zu filtern. Das im Skript deklarierte Array enthält positive, negative und Nullwerte. Die Funktion array_filter () wurde im Skript verwendet, um die negativen Werte aus dem Array abzurufen. Als nächstes wurde das gefilterte Array gedruckt.

// deklarieren Sie ein numerisches Array von positiven, negativen und null Zahlen
$ array = [78, -56, 45, 0, -33, 59, -21];
// Erstellen Sie eine neue Reihe negativer Zahlen
$ filter_array = array_filter ($ array,
Funktion ($ a)
Return $ a < 0;

);
// Drucken Sie das Neue Array
Echo "Negative Anzahl des Arrays sind:
";
foreach ($ filter_array als $ value)
echo $ value."
";

Ausgang:
Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt.

Beispiel-2: Filtern Sie ein assoziatives Array

Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um die assoziativen Array -Werte basierend auf einer Bedingung zu filtern. Das Array enthält den Namen des Schülers als Schlüssel und die Marke als Wert. Die Funktion array_filter () wurde im Skript verwendet, um diese Elemente aus dem Array abzurufen, in dem der Wert mehr als 79 beträgt. Als nächstes wurde das gefilterte Array gedruckt.

// eine assoziative Reihe von vier Elementen deklarieren
$ marks = ["Mir Ali" => 90, "Kamal Hossain" => 78, "Sakil Ahamed" => 82, "Moniruzzaman" => 85];
// Erstellen Sie ein neues Array, das die Nummer mehr als 79 enthält
$ filter_marks = array_filter ($ marks,
Funktion ($ mark)
Return $ mark> 79;

);
// Drucken Sie das Neue Array
foreach ($ filter_marks als $ key => $ value)
Echo $ key. "erhalten".$ Wert."
";

Ausgang:
Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt.

Beispiel-3: Filtern Sie ein assoziatives Array mit einem Objekt

Erstellen Sie eine PHP. Das assoziative Array enthält die Bewerber -ID als Schlüssel und "Gegenwart" oder "abwesend" als Wert. Die Funktion array_filter () filtert diese Elemente, bei denen die Werte "vorhanden" sind.

/*Deklarieren Sie eine Klasse, um die gegenwärtigen Bewerber herauszufinden
* Durch Verwendung einer Methode*/
Klassenprüfung

Öffentliche Funktion vorhanden ($ val)

return $ val == "präsent";


// eine assoziative Reihe von 5 Elementen deklarieren
$ applicants = ['08967' => 'präsent', '04567' => 'abwesend', '08923' => 'präsent', '03412' => 'abwesend', '07811' => 'präsent'];
/*Erstellen Sie ein neues Array, indem Sie array_filter () verwenden
mit der Objekt- und Rückruffunktion*//
$ Present_Applicants = Array_Filter ($ Bewerber,
[New Check (), 'Present']
);
// Drucken Sie die Anzahl der Gesamtbewerber
echo "Gesamtbewerber =".zählen ($ Bewerber)."
";
// Drucken Sie die Anzahl der gegenwärtigen Bewerber
echo "vorhandene Bewerber =".count ($ präsent_applicants);

Ausgang:
Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt.

Beispiel-4: Filtern Sie ein assoziatives Array mit einer Flagge

Erstellen Sie eine PHP -Datei mit dem folgenden Skript, um das Array basierend auf den Flags array_filter_use_key und array_filter_use_both zu filtern. Die First Array_Filter () -Funktion ruft das Element aus dem Array ab, in dem der Schlüsselwert ist. 'London''. Die zweite Funktion von Array_Filter () ruft das Element aus dem Array ab, in dem der Schlüsselwert ist. 'Kabul", und der Wert ist"Afghanistan''.

// ein assoziatives Array deklarieren
$ array = ['Dhaka' => 'Bangladesch', 'Kabul' => 'Afghanistan', 'Canberra' => 'Australien' ',
'Peking' => 'China', 'London' => 'England', 'Washington D.C.'=>' Vereinigte Staaten '];
// mit Array_filter () mit Array_filter_USE_KEY verwenden
$ filtered_array1 = array_filter (
$ Array,
fn ($ k) => $ k == 'London', Array_filter_use_key);
// Drucken Sie den Wert des gefilterten Arrays
foreach ($ filtered_array1 als $ key => $ value)
Echo "
Ländername: $ Wert
";
Echo "Kapitalname. $ key
";

// mit Array_filter () mit Array_filter_use_both verwenden
$ filtered_array2 = array_filter (
$ Array,
fn ($ v, $ k) => $ k == 'kabul' && $ v == 'afghanistan', array_filter_use_both);
// Drucken Sie den Wert des gefilterten Arrays
foreach ($ filtered_array2 als $ key => $ value)
Echo "
Ländername: $ Wert
";
Echo "Kapitalname. $ key
";

Ausgang:
Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt.

Beispiel-5: Filtern Sie ein mehrdimensionales Array

Erstellen Sie eine PHP-Datei mit dem folgenden Skript, das die Werte des zweidimensionalen Arrays filtert. Die Funktion array_filter () filtert diese Werte aus dem Array, in dem der Wert der Gehalt Schlüssel ist größer als 60000.

// deklarieren Sie ein zweidimensionales Array
$ Mitarbeiter = [
['Name' => 'Jafar Iqbal', 'E -Mail' => '[email protected] ',' Gehalt '=> 60000],
['Name' => 'Mohammed Ali', 'E -Mail' => '[email protected] ',' Gehalt '=> 55000],
['name' => 'nila akter', 'mail' => '[email protected] ',' Gehalt '=> 73000],
['name' => 'riya chowdhury', 'mail' => '[email protected] ',' Gehalt '=> 80000]];
// filtern Sie die Array -Werte basierend auf dem Gehalt
$ filterred_tracesees = array_filter ($ Mitarbeiter, Funktion ($ array)
// Mitarbeiter zurückgeben, deren Gehalt mehr als 60000 beträgt
if ($ array ['Gehalt']> 60000)
$ array zurückgeben;

);
// Drucken Sie das gefilterte Array
echo '
';
print_r ($ filterred_Pelees);
echo '
';
?>

Ausgang:
Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt.

Abschluss:

Die Funktion array_filter () kann die Array -Werte unterschiedlich filtern, indem die Rückruffunktion mit oder ohne Flag -Wert verwendet wird. In den Beispielen dieses Tutorials wurden die Möglichkeiten zur Filterung numerischer und assoziativer eindimensionaler und zweidimensionaler Arrays gezeigt. Ich hoffe.