Heim  >  Artikel  >  Backend-Entwicklung  >  So entfernen Sie Nullwerte aus einem Array in PHP

So entfernen Sie Nullwerte aus einem Array in PHP

PHPz
PHPzOriginal
2023-04-23 09:13:122172Durchsuche

In der PHP-Entwicklung ist es oft notwendig, mit Arrays zu arbeiten, und das Entfernen von Nullwerten aus Arrays ist eine der häufigsten Operationen. Die häufigste Situation besteht darin, dass der Benutzer beim Abrufen von Daten aus einem Formular möglicherweise einige Daten leer lässt. Bei der anschließenden Verarbeitung wirken sich diese leeren Werte jedoch auf den normalen Betrieb des Programms aus. Daher müssen wir diese Nullwerte entfernen.

In diesem Artikel werden verschiedene Methoden zum Entfernen von Nullwerten aus Arrays in PHP vorgestellt.

Methode 1: Verwenden Sie die Funktion array_filter()

array_filter() ist eine integrierte Funktion in PHP, die Elemente in einem Array filtern kann. Wir können eine Rückruffunktion als Parameter übergeben und die Rückruffunktion gibt einen booleschen Wert zurück. Wenn er wahr ist, wird das Element beibehalten, wenn er falsch ist, wird das Element gelöscht. Wenn keine Callback-Funktion übergeben wird, werden alle Nullwerte, 0, false und null im Array gelöscht.

Der Beispielcode lautet wie folgt:

$arr = array('a', '', 'b', null, 'c', ' ', 'd', false);
$arr = array_filter($arr, 'strlen');
print_r($arr);

Das Ausgabeergebnis lautet wie folgt:

Array
(
    [0] => a
    [2] => b
    [4] => c
    [6] => d
)

Im obigen Code verwenden wir die strlen-Funktion als Rückruffunktion, die die Länge einer Zeichenfolge zurückgibt Wenn die Zeichenfolge 0 ist, ist sie falsch. Daher werden alle Elemente mit einer Länge ungleich Null beibehalten.

Methode 2: Foreach-Schleife verwenden

Eine weitere gängige Methode zum Entfernen von Nullwerten aus einem Array besteht darin, eine foreach-Schleife zu verwenden, um das Array zu durchlaufen und die Nullwerte zu löschen. Der Beispielcode lautet wie folgt:

$arr = array('a', '', 'b', null, 'c', ' ', 'd', false);

foreach($arr as $key => $value) {
    if(empty($value)) {
        unset($arr[$key]);
    }
}

print_r($arr);

Das Ausgabeergebnis ist das gleiche wie bei Methode eins:

Array
(
    [0] => a
    [2] => b
    [4] => c
    [6] => d
)

Im obigen Code verwenden wir die Funktion empty(), um zu bestimmen, ob das Element leer ist, und wenn es leer ist, verwenden wir die Funktion unset() zum Löschen des Elements.

Methode 3: Verwenden Sie die Funktion array_diff()

Es gibt auch eine Methode, um die Funktion array_diff() zu verwenden, um Nullwerte im Array zu entfernen. Die Funktion array_diff() ist eine in PHP integrierte Funktion, mit der die Differenz eines Arrays berechnet wird. Wenn wir den Nullwert eines Arrays als „Differenzmenge“ mit einem anderen leeren Array berechnen, können wir nach dem Entfernen des Nullwerts das ursprüngliche Array erhalten.

Der Beispielcode lautet wie folgt:

$arr = array('a', '', 'b', null, 'c', ' ', 'd', false);
$arr = array_diff($arr, array(''));

print_r($arr);

Das Ausgabeergebnis ist das gleiche wie bei den beiden oben genannten Methoden:

Array
(
    [0] => a
    [2] => b
    [4] => c
    [6] => d
)

Im obigen Code verwenden wir ein leeres Array als Parameter. Dieses leere Array hat keine Elemente, also ist es Der Unterschied besteht darin, dass das ursprüngliche Array entfernt wird.

Zusammenfassung

In diesem Artikel werden drei Methoden zum Entfernen leerer Werte aus Arrays in PHP vorgestellt: Verwendung der Funktion array_filter(), Verwendung der foreach-Schleife und Verwendung der Funktion array_diff(). Diese Methoden können Nullwerte im Array effektiv entfernen und das Programm stabiler machen. In der tatsächlichen Entwicklung können wir je nach Bedarf eine Methode auswählen, die zu uns passt.

Das obige ist der detaillierte Inhalt vonSo entfernen Sie Nullwerte aus einem Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn