Aktueller Standort: Startseite> Neueste Artikel> Array_filter () wird mit globalen Funktionen wie is_numeric verwendet

Array_filter () wird mit globalen Funktionen wie is_numeric verwendet

M66 2025-06-03

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.

Grundlegende Syntax

 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.).

Beispiel: Filtern Sie numerische Elemente in einem Array heraus

 $items = ['apple', 42, '123', null, 0, 'banana', 3.14, '0', true];

$numericItems = array_filter($items, 'is_numeric');

print_r($numericItems);

Ausgangsergebnis:

 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.

Verwenden Sie anonyme Funktionen, um sich mit anderen Bedingungen zu kombinieren

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);

Ausgangsergebnis:

 Array
(
    [1] => 42
    [2] => 123
)

Praktische Anwendungsszenarien

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.

Zusammenfassung

  • 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.