Zweidimensionales PHP-Array löschen

WBOY
Freigeben: 2023-05-23 09:40:36
Original
524 Leute haben es durchsucht

In PHP werden zweidimensionale Arrays häufig zum Speichern von Tabellendaten oder zum Speichern verwandter Daten in Form von Schlüssel-Wert-Paaren verwendet. Manchmal müssen wir jedoch bestimmte Daten aus einem zweidimensionalen Array löschen. In diesem Artikel werden daher verschiedene Methoden zum Löschen zweidimensionaler Array-Daten vorgestellt.

  1. array_splice()-Funktion

array_splice()-Funktion kann ein bestimmtes Datenelement aus dem Array löschen und das gelöschte Element zurückgeben. Seine Verwendung ist wie folgt:

array_splice ( array &$input , int $offset [, int $length = 0 [, mixed $replacement = array() ]] ) : array
Nach dem Login kopieren

Unter diesen ist der Parameter $input das Array, das bearbeitet werden muss; der Parameter $offset ist die Indexposition, an der mit dem Löschen begonnen werden soll; Mit dem Parameter $replacement können Elemente ersetzt und gelöscht werden. Wenn der Parameter $length nicht angegeben ist, beginnen die gelöschten Elemente an der Position $offset und enden am Ende des Arrays. Wenn der Parameter $replacement nicht angegeben ist, wird ein Array gelöschter Elemente zurückgegeben.

Wenn wir ein Element in einem zweidimensionalen Array löschen, müssen wir die zu löschende Position und Nummer angeben, damit wir den folgenden Code verwenden können:

$array = array(
    array('id' => 1, 'name' => 'A'),
    array('id' => 2, 'name' => 'B'),
    array('id' => 3, 'name' => 'C'),
    array('id' => 4, 'name' => 'D')
);
$index = 1; //要删除的索引位置
$len = 1; //要删除的元素个数
array_splice($array, $index, $len);
Nach dem Login kopieren

Nach der Ausführung des obigen Codes wird das Array $array wie folgt geändert:

[
    ['id' => 1, 'name' => 'A'],
    ['id' => 3, 'name' => 'C'],
    ['id' => 4, 'name' => 'D']
]
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
  1. unset()-Funktion

Die unset()-Funktion kann verwendet werden, um das Element zu löschen, das dem angegebenen Schlüsselnamen im Array entspricht:

unset($array[$key]);
Nach dem Login kopieren

Wenn wir ein Element in einem zweidimensionalen Array löschen, müssen wir dies tun Geben Sie den Namen des zu löschenden Schlüssels und das Array an, in dem er sich befindet. Löschen Sie beispielsweise den Datensatz mit der ID 2 im folgenden Array:

$array = array(
    array('id' => 1, 'name' => 'A'),
    array('id' => 2, 'name' => 'B'),
    array('id' => 3, 'name' => 'C'),
    array('id' => 4, 'name' => 'D')
);
$key = null;
foreach ($array as $k => $v) {
    if ($v['id'] == 2) {
        $key = $k; //找到了要删除的键名
        break;
    }
}
if ($key !== null) {
    unset($array[$key]);
}
Nach dem Login kopieren

Nach der Ausführung des obigen Codes wird das Array $array wie folgt geändert:

[
    ['id' => 1, 'name' => 'A'],
    ['id' => 3, 'name' => 'C'],
    ['id' => 4, 'name' => 'D']
]
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren
  1. array_filter()-Funktion

array_filter()-Funktion kann verwendet werden um Elemente im Array zu filtern, d. h. Elemente im Array zu löschen, die die Bedingungen nicht erfüllen. Wenn der zweite Parameter nicht übergeben wird, werden Elemente mit dem Wert „false“ standardmäßig gelöscht.

Wenn wir ein Element in einem zweidimensionalen Array löschen, müssen wir die Rückruffunktion verwenden, um eine Beurteilung und Filterung durchzuführen. Löschen Sie beispielsweise den Datensatz mit der ID 2 im folgenden Array:

$array = array(
    array('id' => 1, 'name' => 'A'),
    array('id' => 2, 'name' => 'B'),
    array('id' => 3, 'name' => 'C'),
    array('id' => 4, 'name' => 'D')
);
$array = array_filter($array, function($v) {
    return $v['id'] != 2; //返回id不等于2的记录
});
Nach dem Login kopieren

Nach der Ausführung des obigen Codes wird das Array $array wie folgt geändert:

[
    ['id' => 1, 'name' => 'A'],
    ['id' => 3, 'name' => 'C'],
    ['id' => 4, 'name' => 'D']
]
Nach dem Login kopieren
Nach dem Login kopieren
Nach dem Login kopieren

Zusammenfassung

In diesem Artikel werden verschiedene Möglichkeiten zum Löschen zweidimensionaler Array-Daten vorgestellt in PHP-Methoden, einschließlich der Funktion array_splice(), der Funktion unset() und der Funktion array_filter(). Je nach Bedarf können unterschiedliche Methoden ausgewählt werden, und die spezifischen Implementierungsmethoden können auch entsprechend der tatsächlichen Situation optimiert und verbessert werden. Achten Sie bei jeder Methode natürlich unbedingt auf den Schlüsselnamen und die Indexposition des Arrays, um unnötige Fehler zu vermeiden.

Das obige ist der detaillierte Inhalt vonZweidimensionales PHP-Array löschen. 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