Heim > Artikel > Backend-Entwicklung > So entfernen Sie hohle Elemente aus einem Array in PHP
In PHP ist das Entfernen leerer Elemente ein häufiger Vorgang, insbesondere bei der Verarbeitung von Arrays, die von Formularen oder Datenbanken zurückgegeben werden. Wenn Sie die foreach-Schleifenverarbeitung direkt verwenden, können Sie if-Bedingungsanweisungen verwenden, um zu bestimmen, ob sie leer sind. Diese Methode erfordert jedoch mehr Code und eine geringere Ausführungseffizienz. Daher können wir die von PHP bereitgestellten Array-Funktionen verwenden, um leere Elemente aus dem Array zu entfernen.
Zuerst können wir die Funktion array_filter verwenden, um leere Elemente aus dem Array zu entfernen. Die Funktion array_filter kann Elemente in einem Array filtern und Elemente im Array zurückgeben, die bestimmte Bedingungen erfüllen. Wenn der zweite Parameter nicht übergeben wird, filtert diese Funktion standardmäßig leere Elemente im Array heraus.
Das Folgende ist beispielsweise ein Array mit leeren Elementen:
$arr = array("dog", "", "cat", "", "mouse");
Verwenden Sie die Funktion array_filter, um leere Elemente zu entfernen:
$newArr = array_filter($arr); print_r($newArr); // 输出:Array ( [0] => dog [2] => cat [4] => mouse )
Wie Sie sehen können, wird nach dem Entfernen leerer Elemente ein neues Array $newArr zurückgegeben, das nur enthält nicht leere Elemente. Mit dieser Methode können wir leere Elemente einfach aus dem Array entfernen.
Zusätzlich zur Funktion array_filter können wir auch die Funktion array_diff verwenden, um leere Elemente aus dem Array zu entfernen. Die Funktion array_diff vergleicht zwei Arrays und gibt die Differenz zwischen den beiden Arrays zurück. Wenn wir also ein leeres Array als Argument übergeben, erhalten wir ein neues Array, das nur nicht leere Elemente enthält.
Das Folgende ist zum Beispiel ein Array mit leeren Elementen:
$arr = array("dog", "", "cat", "", "mouse");
Verwenden Sie die Funktion array_diff, um leere Elemente zu entfernen:
$newArr = array_diff($arr, array("")); print_r($newArr); // 输出:Array ( [0] => dog [2] => cat [4] => mouse )
In ähnlicher Weise wird nach dem Entfernen leerer Elemente ein neues Array $newArr zurückgegeben, das nur nicht leere Elemente enthält Elemente.
In der tatsächlichen Entwicklung müssen wir normalerweise mehrere Vorgänge am Array ausführen und möglicherweise mehrere Elemente im Array entfernen. Wir können dies tun, indem wir eine Kombination der Funktionen array_filter und array_diff verwenden.
Das Folgende ist beispielsweise ein Array, das leere Elemente und Nullen enthält:
$arr = array("dog", "", "cat", 0, "mouse");
Verwenden Sie den folgenden Code, um leere Elemente und Nullen im Array zu entfernen:
$newArr = array_diff(array_filter($arr), array("", 0)); print_r($newArr); // 输出:Array ( [0] => dog [2] => cat [4] => mouse )
Mit dieser Methode können wir mehrere Arten von Elementen im Array entfernen auf einmal Elemente, wodurch Codevereinfachung und Effizienzsteigerung erreicht werden.
Zusammenfassung:
In PHP ist das Entfernen leerer Elemente aus einem Array ein sehr häufiger Vorgang. Wir können die Funktion array_filter oder array_diff verwenden, um leere Elemente zu entfernen. Durch die gemeinsame Verwendung mehrerer Funktionen können wir mehrere Elemente gleichzeitig aus dem Array entfernen, wodurch der Code vereinfacht und die Effizienz verbessert wird.
Das obige ist der detaillierte Inhalt vonSo entfernen Sie hohle Elemente aus einem Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!