In PHP ist Array_filter () eine sehr praktische Funktion, mit der Elemente in einem Array gefiltert werden können, wodurch nur Elemente beibehalten werden, die den Kriterien entsprechen. Es wird normalerweise in Verbindung mit Callback -Funktionen verwendet, und in vielen praktischen Anwendungen ist es eine prägnante und effiziente Art und Weise, dass globale Funktionen (z. B. is_numeric ) verwendet werden, um Daten zu filtern.
In diesem Artikel wird Beispiele verwendet, um zu demonstrieren, wie Array_filter () mit IS_Numeric verwendet wird, um numerische Elemente in einem Array zu filtern.
array_filter(array $array, ?callable $callback = null, int $mode = 0): array
$ Array : Geben Sie das Array ein.
$ Callback : Eine Rückruffunktion, mit der bestimmt wird, ob jedes Element beibehalten wird.
$ modus : Filtermodus, optional.
Wenn die Rückruffunktion nicht bereitgestellt wird, wird Array_filter () alle Werte entfernen, die standardmäßig falsch äquivalent sind (z. B. false , 0 , "" , null usw.).
$items = ['apple', 42, '123', null, 0, 'banana', 3.14, '0', true];
$numericItems = array_filter($items, 'is_numeric');
print_r($numericItems);
Array
(
[1] => 42
[2] => 123
[6] => 3.14
[7] => 0
)
Wie Sie sehen können, behält Array_filter () alle Elemente im Array bei, die von IS_Numeric als numerische Werte beurteilt werden. Dies schließt Ganzzahlen, schwimmende Punktzahlen, numerische Zeichenfolgen (wie '123' ) und sogar String '0' ein.
Sie können IS_Numeric auch mit anderen Bedingungen verwenden, zum Beispiel:
$items = ['apple', 42, '123', null, 0, 'banana', 3.14, '0', true];
// Behalten nur größer als 10 Der Wert von
$filtered = array_filter($items, function ($item) {
return is_numeric($item) && $item > 10;
});
print_r($filtered);
Array
(
[1] => 42
[2] => 123
)
Nehmen wir beispielsweise an, Ihre Website (z. B. https://m66.net/form-handler.php ) empfängt ein Array von Daten, die Benutzereingaben enthalten, die möglicherweise Text, Nullwerte oder Zahlen enthalten. Sie möchten nur Zahlen für Statistiken oder Überprüfungen extrahieren und diese Aufgabe schnell mit Array_Filter () und is_numeric () erledigen.
Array_Filter () kann verwendet werden, um Array -Elemente zu filtern.
Es ist sehr einfach und effizient, wenn es mit globalen Funktionen wie IS_NUMERIC verwendet wird.
Eine komplexe Filterung kann durch weitere Kombinationslogik durch anonyme Funktionen durchgeführt werden.
Wenn Sie diese Technik beherrschen, können Sie Ihren PHP -Code flexibler und leistungsfähiger in der Datenverarbeitung machen.