Heim >Backend-Entwicklung >PHP-Problem >So entfernen Sie leere Array-Elemente in PHP

So entfernen Sie leere Array-Elemente in PHP

青灯夜游
青灯夜游Original
2022-09-28 19:01:514036Durchsuche

Zwei Entfernungsmethoden: 1. Verwenden Sie die Funktion array_filter(), um das Array zu filtern und Nullwertelemente zu löschen. Die Syntax lautet „array_filter($arr)“. 2. Verwenden Sie die foreach-Anweisung, um das assoziative Array zu durchlaufen, verwenden Sie empty() im Schleifenkörper, um das Nullelement zu bestimmen, und verwenden Sie die Funktion unset(), um das Element basierend auf dem Schlüsselnamen zu löschen. Die Syntax lautet „foreach(“. $arr as $k=>$v) {if(empty($v)){unset($arr[$k]);}}".

So entfernen Sie leere Array-Elemente in PHP

Die Betriebsumgebung dieses Tutorials: Windows 7-System, PHP-Version 8.1, DELL G3-Computer

Methode 1: Verwenden Sie die Funktion array_filter(), um das Array zu filtern und Elemente mit leeren Werten zu löschen

array_filter() Funktionen, auch Callback-Funktionen genannt, werden verwendet, um Elemente eines Arrays mithilfe einer benutzerdefinierten Funktion zu filtern. Es durchläuft jeden Wert im Array und übergibt ihn an eine benutzerdefinierte Funktion oder Rückruffunktion.

Wenn die Funktion array_filter() zum Deklarieren einer Rückruffunktion verwendet wird, werden falsche Werte (Nullwerte) entfernt. Wenn die Rückruffunktion jedoch nicht angegeben ist, werden alle Elemente im Array mit einem Wert gleich FALSE, z B. leere Zeichenfolgen oder NULL, wird der Wert entfernt.

Implementierungscode

function f($arr){
	$newarr = array_filter($arr); 
	echo "过滤后的数组:";
	var_dump($newarr);
}

F($arr)-Funktion aufrufen

$arr = array(11,'',null,12,false,0); 
var_dump($arr);
f($arr);

So entfernen Sie leere Array-Elemente in PHP

Methode 2: foreach-Anweisung + empty()-Funktion + unset()-Funktion

  • Verwenden Sie die foreach-Anweisungsschleife Durchlaufen Sie das Array

  • Verwenden Sie im Schleifenkörper empty(), um nacheinander zu bestimmen, ob die Array-Elemente leer sind, und verwenden Sie die Funktion unset(), um leere Werte basierend auf dem Schlüsselnamen zu löschen

Implementierungscode:

<?php
header("Content-type:text/html;charset=utf-8");
function f($arr){
	foreach ($arr as $k=>$v){
	    if(empty($v)){
			unset($arr[$k]);  
		}
	}

	echo "过滤后的数组:";
	var_dump($arr);
}


$arr = array(11,&#39;1&#39;,&#39;&#39;,&#39; &#39;,&#39;0&#39;,&#39;0.0&#39;,0.0,null,12,false,0); 
var_dump($arr);
f($arr);
?>

So entfernen Sie leere Array-Elemente in PHP

Funktionsbeschreibung:

empty()-Funktion wird verwendet, um zu prüfen, ob eine Variable leer ist. empty() 函数用于检查一个变量是否为空。

empty() 判断一个变量是否被认为是空的。当一个变量并不存在,或者它的值等同于 FALSE,那么它会被认为不存在。如果变量不存在的话,empty()并不会产生警告。

以下值会被empty() 认为是空的:

  • "" (空字符串)

  • 0 (作为整数的0)

  • 0.0 (作为浮点数的0)

  • "0" (作为字符串的0)

  • NULL

  • FALSE

  • array() (一个空数组)

  • $var; (一个声明了,但是没有值的变量)

unset()

empty() bestimmt, ob eine Variable als leer gilt. Wenn eine Variable nicht existiert oder ihr Wert FALSE ist, gilt sie als nicht vorhanden. empty() generiert keine Warnung, wenn die Variable nicht existiert.

Die folgenden Werte werden von empty() als leer betrachtet:

🎜🎜"" (leerer String) 🎜🎜🎜🎜0 (0 als Ganzzahl) 🎜🎜🎜🎜0.0 (0 als Gleitkommazahl) 🎜🎜 „0“ (0 als String) )🎜🎜🎜🎜unset()-Funktion wird verwendet, um die angegebene Variable zu zerstören. 🎜🎜Empfohlenes Lernen: „🎜PHP-Video-Tutorial🎜“🎜

Das obige ist der detaillierte Inhalt vonSo entfernen Sie leere Array-Elemente 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