Heim > Backend-Entwicklung > PHP-Problem > So löschen Sie einen Nullwert im Array in PHP

So löschen Sie einen Nullwert im Array in PHP

PHPz
Freigeben: 2023-04-19 10:37:43
Original
755 Leute haben es durchsucht

PHP ist eine weit verbreitete Skriptsprache, die im Bereich der Webentwicklung weit verbreitet ist. In der Entwicklung müssen wir häufig Arrays bearbeiten. Wenn wir auf ein Array stoßen, das Nullwerte enthält, müssen wir es möglicherweise löschen. In diesem Artikel erfahren Sie, wie Sie mit PHP Nullwerte in einem Array löschen.

1. Durchlaufen und Löschen

Die einfachste Methode besteht darin, Nullwerte zu durchlaufen und zu löschen. Zuerst erstellen wir ein Array mit Nullwerten.

$arr = array(1, 2, null, 4, null, 6);
print_r($arr);
Nach dem Login kopieren

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [2] => 
    [3] => 4
    [4] => 
    [5] => 6
)
Nach dem Login kopieren
Nach dem Login kopieren

Wir können das Array durch eine foreach-Schleife durchlaufen und unset() verwenden, um Elemente zu löschen, die Nullwerte enthalten.

foreach ($arr as $key => $value){
    if(is_null($value)){
        unset($arr[$key]);
    }
}
print_r($arr);
Nach dem Login kopieren

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [3] => 4
    [5] => 6
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Verwenden Sie die Funktion unset(), um Elemente im Array zu löschen. Die Funktion is_null() wird verwendet, um zu bestimmen, ob es null ist, sodass Sie Nullelemente im Array schnell löschen können.

2. Funktion array_filter()

Eine andere Methode ist die Verwendung der in PHP integrierten Funktion array_filter(). Diese Funktion akzeptiert ein Array und gibt ein neues Array zurück. Sie filtert die Werte im ursprünglichen Array über die angegebene Rückruffunktion und gibt das neue Array zurück. Wenn die Rückruffunktion „true“ zurückgibt, bleibt das Element erhalten, und wenn sie „false“ zurückgibt, wird das Element gelöscht.

Daher können wir eine anonyme Funktion erstellen, um zu bestimmen, ob das Element null ist, und die Funktion array_filter() zum Filtern verwenden.

$arr = array(1, 2, null, 4, null, 6);
$new_arr = array_filter($arr, function($value){
    return $value !== null;
});
print_r($new_arr);
Nach dem Login kopieren

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [3] => 4
    [5] => 6
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

3. Funktion array_diff()

Sie können die Funktion array_diff() auch verwenden, um Array-Differenzoperationen durchzuführen, um Nullwertelemente aus dem ursprünglichen Array zu löschen. Diese Methode erfordert eine Differenzoperation zwischen dem ursprünglichen Array und einem Array, das nur Nullwerte enthält. Das Ergebnis ist ein neues Array, das keine Nullwerte enthält.

$arr = array(1, 2, null, 4, null, 6);
$null_arr = array(null);
$new_arr = array_diff($arr, $null_arr);
print_r($new_arr);
Nach dem Login kopieren

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [3] => 4
    [5] => 6
)
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

4. Funktion array_map()

Schließlich können wir die Funktion array_map() verwenden, um Array-Nullwerte zu filtern. Diese Funktion akzeptiert ein Array und gibt ein neues Array zurück. Die Werte im ursprünglichen Array werden über die angegebene Rückruffunktion verarbeitet und das neue Array zurückgegeben.

Verwenden Sie die Funktion array_map(), um Nullwerte in beliebige Werte umzuwandeln und diese dann herauszufiltern. Hier konvertieren wir den Nullwert in einen leeren String und filtern ihn dann.

$arr = array(1, 2, null, 4, null, 6);
$new_arr = array_map(function($value){
    return $value ?? '';
}, $arr);
print_r($new_arr);
Nach dem Login kopieren

Ausgabeergebnis:

Array
(
    [0] => 1
    [1] => 2
    [2] => 
    [3] => 4
    [4] => 
    [5] => 6
)
Nach dem Login kopieren
Nach dem Login kopieren

Verwenden Sie den Operator ??, um den Nullwert in eine leere Zeichenfolge umzuwandeln, und verwenden Sie dann die Funktion array_filter() zum Filtern, um ein neues Array zu erhalten, das keine Nullwerte enthält.

In diesem Artikel werden vier Methoden zum Löschen von Nullwerten in PHP-Arrays vorgestellt, nämlich die Traversal-Löschung, die Funktion array_filter(), die Funktion array_diff() und die Funktion array_map(). Für unterschiedliche Szenarien eignen sich unterschiedliche Methoden. Bei der Entwicklung können Sie je nach tatsächlicher Situation die für Sie geeignete Methode auswählen.

Das obige ist der detaillierte Inhalt vonSo löschen Sie einen Nullwert im Array in PHP. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Quelle:php.cn
Erklärung dieser Website
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
Beliebte Tutorials
Mehr>
Neueste Downloads
Mehr>
Web-Effekte
Quellcode der Website
Website-Materialien
Frontend-Vorlage