Wie man Array-Löschen nach Wert und nicht nach Schlüssel in PHP durchführt
-
Verwenden Sie die Funktionen
array_search()
undunset()
, um in PHP eine Array-Löschung nach Wert und nicht nach Schlüssel durchzuführen -
Verwenden Sie die Funktion
array_diff()
, um Array-Löschen nach Wert, nicht nach Schlüssel, in PHP durchzuführen
Dieser Artikel stellt verschiedene Methoden zum Entfernen von Werten aus einem Array in PHP vor.
Verwenden Sie die Funktionen array_search()
und unset()
, um in PHP eine Array-Löschung nach Wert und nicht nach Schlüssel durchzuführen
Das Hauptverfahren zum Löschen eines Arrays nach Wert, aber nicht nach Schlüssel, besteht darin, zuerst den Wert zu finden. Wir könnten den Wert löschen, nachdem er gefunden wurde. Wir werden den Wert mit der Funktion array_search()
finden und ihn mit der Funktion unset()
löschen. Die Funktion unset()
setzt eine Variable zurück. Die korrekte Syntax zur Verwendung dieser Funktionen lautet wie folgt.
Syntax von array_search()
array_search($value, $array, $strict);
Die eingebaute Funktion array_search()
hat drei Parameter. Die Einzelheiten ihrer Parameter sind wie folgt
Parameter | Beschreibung | |
---|---|---|
$value |
obligatorisch | Es ist der Wert, den wir in dem Array suchen wollen. |
$array |
obligatorisch | Es ist das Feld, in dem wir den angegebenen Wert suchen werden. |
$strict |
optional | Wenn dieser Parameter auf True gesetzt ist, dann wird die Funktion auch die identischen Elemente im Array suchen. |
Diese Funktion gibt den Schlüssel des angegebenen Wertes zurück.
Syntax von unset()
unset($variable1, $variable2, ..., $variableN);
Die eingebaute Funktion unset()
hat mehrere Parameter. Die Einzelheiten ihrer Parameter sind wie folgt
Parameter | Beschreibung | |
---|---|---|
$variable1 , $variable2 , $variableN |
obligatorisch | Es ist die Variable oder Datenstruktur, die wir aufheben wollen. Mindestens eine Variable ist obligatorisch. |
Diese Funktion gibt nichts zurück.
Beispiel für das Entfernen von Werten aus einem Array in PHP
Das folgende Programm zeigt, wie wir diese Funktionen verwenden können, um in PHP Array-Löschen nach Wert, aber nicht nach Schlüssel durchzuführen.
<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy");
echo("Array before deletion: \n");
var_dump($array);
$value = "Jasmine";
if (($key = array_search($value, $array)) !== false) {
unset($array[$key]);
}
echo("Array after deletion: \n");
var_dump($array);
?>
Ausgabe:
Array before deletion:
array(6) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[2]=>
string(7) "Jasmine"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
}
Array after deletion:
array(5) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
}
Verwenden Sie die Funktion array_diff()
, um Array-Löschen nach Wert, nicht nach Schlüssel, in PHP durchzuführen
In PHP können wir auch die Funktion array_diff()
verwenden, um das Löschen von Arrays nach Wert und nicht nach Schlüssel durchzuführen. Diese Funktion berechnet die Differenz eines gegebenen Arrays mit einem anderen Array. Die korrekte Syntax zur Verwendung dieser Funktion lautet wie folgt.
Syntax
array_diff($array, $Arr1, $Arr2, ...,$ArrN);
Die Funktion array_diff()
akzeptiert N+1 Parameter. Die Einzelheiten ihrer Parameter sind wie folgt.
Parameter | Beschreibung | |
---|---|---|
$array |
obligatorisch | Es ist das Hauptarray, aus dem wir einen Wert entfernen wollen |
$Arr1 , $Arr2 , $ArrN |
obligatorisch | Es ist das Array, das wir entfernen wollen. Die Funktion nimmt seine Differenz mit dem Array und entfernt es aus dem Array, wenn es vorhanden ist. |
Das Programm, das die Array-Löschung nach Wert, aber nicht nach Schlüssel durchführt, ist wie folgt.
<?php
$array = array("Rose","Lili","Jasmine","Hibiscus","Daffodil","Daisy");
echo("Array before deletion: \n");
var_dump($array);
$value = array("Jasmine");
$array = array_diff( $array, $value);
echo("Array after deletion: \n");
var_dump($array);
?>
Ausgabe:
Array before deletion:
array(6) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[2]=>
string(7) "Jasmine"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
}
Array after deletion:
array(5) {
[0]=>
string(4) "Rose"
[1]=>
string(4) "Lili"
[3]=>
string(8) "Hibiscus"
[4]=>
string(8) "Daffodil"
[5]=>
string(5) "Daisy"
}
Verwandter Artikel - PHP Array
- Wie man die erste und letzte Iteration in einer foreach-Schleife in PHP bestimmt
- Wie man in PHP ein Array in eine Zeichenkette konvertiert
- Wie man das erste Element eines Arrays in PHP erhält
- Wie Sie ein Array in PHP echoen oder drucken
- Wie löscht man ein Element aus einem Array in PHP
- Wie man leere Array-Elemente in PHP entfernt