Aktueller Standort: Startseite> Neueste Artikel> Kombinieren Sie Array_Fill () und Array_filter (), um Stapeleingangswerte zu verarbeiten

Kombinieren Sie Array_Fill () und Array_filter (), um Stapeleingangswerte zu verarbeiten

M66 2025-06-05

In der täglichen PHP -Entwicklung, insbesondere bei Verarbeitungsformularen oder Stapeldateneinreichungen, begegnen wir häufig auf die Notwendigkeit, eine große Anzahl von Eingabewerten zu initialisieren und zu filtern. In diesem Artikel wird vorgestellt, wie die beiden Funktionen von Array_Fill () und Array_Filter () verwendet werden, um die Initialisierung und Gültigkeitsfilterung von Batch -Eingangswerten zu implementieren.

1. Funktion Einführung

  • Array_Fill (int $ start_index, int $ count, gemischter $ value): Array

    Wird verwendet, um ein Array zu erstellen und es mit dem angegebenen Wert zu füllen, der zum Initialisieren einer festen Strukturdatenerfassung geeignet ist.

  • Array_Filter (Array $ Array,? Callable $ callback = null, int $ modus = 0): Array

    Wird verwendet, um Werte in einem Array zu filtern. Standardmäßig werden alle Elemente, die False entsprechen (z. B. 0 , False , Null , '' usw.) im Array, entfernt und eine komplexere Filterlogik kann durch benutzerdefinierte Rückruffunktionen implementiert werden.

2. Tatsächliches Szenario: Formular zur Verarbeitung von Datenvermittlungsdaten für Formularer

Angenommen, wir arbeiten mit 10 Einträgen an einem Stapelformformular. Jeder Eintrag ist ein vom Benutzer eingegebener Name. Wir hoffen:

  1. Initialisieren Sie diese Einträge als Standard -leere Zeichenfolgen;

  2. Filtern Sie nicht versuchte Elemente heraus, und nur Elemente mit ausgefüllten Namen werden für die nächste Verarbeitung oder den Speicher aufbewahrt.

Beispielcode:

 <?php

// Angenommen, der vom Benutzer eingereichte Daten sind wie folgt(Teilweise leer)
$submittedData = [
    'Alice',
    '',
    'Bob',
    null,
    'Charlie',
    '',
    '  ',
    'David',
    false,
    'Eve'
];

// Erster Schritt:Initialisierung 10 Einträge,Der Standardwert ist eine leere Zeichenfolge(Verhindern Sie, dass Daten unvollständig sind, wenn sie nicht eingereicht werden)
$inputCount = 10;
$defaultData = array_fill(0, $inputCount, '');

// Schritt 2:将用户提交的数据合并到Initialisierung数组中,Vermeiden Sie den Index fehlen
$mergedData = array_replace($defaultData, $submittedData);

// Schritt 3:verwenden array_filter Filtern Sie ungültige Daten(Wie eine leere Zeichenfolge、null、false、Räume usw.)
$validData = array_filter($mergedData, function ($value) {
    // verwenden trim Räume entfernen,Stellen Sie dann fest, ob es leer ist
    return trim($value) !== '';
});

// Schritt 4:Verarbeiten Sie gültige Daten(Wenn gerettet、verifizieren、Ausgabe)
foreach ($validData as $index => $name) {
    echo "1. " . ($index + 1) . " Item Gültiges Eingang:{$name}\n";
}

Ausgangsergebnis:

 1. 1 Item Gültiges Eingang:Alice
1. 3 Item Gültiges Eingang:Bob
1. 5 Item Gültiges Eingang:Charlie
1. 8 Item Gültiges Eingang:David
1. 10 Item Gültiges Eingang:Eve

3.. Erweitern Sie den praktischen Gebrauch

Diese Kombination ist sehr nützlich in praktischen Anwendungen, wie z. B.:

  • Multi-Line-Message Board;

  • Bulk -Benutzerimport;

  • Setzen Sie Parameter in Stapeln (wie URL -Arrays, API -Anforderungsdaten usw.);

  • Vorbereitet die von Benutzern hochgeladenen Batch -Felder (wie Titel, Beschreibung usw. beim Hochladen von Stapeln).

Zum Beispiel müssen Sie möglicherweise eine Reihe von URL -Adressen aus dem Formular abrufen und überprüfen, ob es nicht leer und gültig ist:

 $urls = [
    'https://m66.net/api/user',
    '',
    'https://m66.net/docs',
    null,
    '   '
];

$urls = array_filter($urls, function ($url) {
    return trim($url) !== '';
});

// Ausgabe有效链接
print_r($urls);

4. Zusammenfassung

Durch die Verwendung von Array_Fill (), um die Datenstruktur zu initialisieren und die vom Benutzer eingereichten Daten mit Array_filter () zu reinigen, kann der Verarbeitungsfluss von Stapeldaten in PHP stark vereinfacht werden. Diese Methode ist nicht nur effizient und prägnant, sondern verbessert auch die Robustheit und Wartbarkeit des Codes. Es ist eine Fähigkeit, die jeder PHP -Entwickler beherrschen sollte.

Wenn Sie häufig Stapeldateneingaben aus Formularen, APIs oder Datenbanken verarbeiten, verwenden Sie diese beiden Funktionen, um Ihre Verarbeitungslogik zu optimieren.