Heim >Backend-Entwicklung >PHP-Problem >PHP löscht den Array-Schlüsselnamen und den angegebenen Schlüsselwert

PHP löscht den Array-Schlüsselnamen und den angegebenen Schlüsselwert

王林
王林Original
2023-05-24 19:01:07443Durchsuche

In der PHP-Entwicklung ist Array eine wesentliche Datenstruktur. Beim Umgang mit Arrays müssen wir jedoch häufig einen bestimmten Schlüssel oder das Element löschen, das den Schlüsselwert enthält. In diesem Artikel erfahren Sie, wie Sie einen bestimmten Schlüsselwert aus einem Array in PHP löschen.

In PHP ist das Löschen von Array-Schlüsselwerten ein sehr häufiger Vorgang. Manchmal müssen wir den Wert unter einem angegebenen Schlüsselnamen löschen oder alle Elemente löschen, die den angegebenen Wert im gesamten Array enthalten. Im Folgenden stellen wir die Löschmethoden für diese beiden Situationen vor.

  1. Löschen Sie den Wert unter dem angegebenen Schlüsselnamen

In PHP ist das Löschen des Werts unter dem angegebenen Schlüsselnamen sehr einfach. Wir müssen die Funktion unset() von PHP verwenden, um den Wert zu löschen, der einem bestimmten Schlüsselnamen im Array entspricht. Im folgenden Array möchten wir beispielsweise den Wert löschen, der dem Schlüsselnamen name2 entspricht: unset() 函数,将数组中的某个键名对应的值删除即可。例如,在下面这个数组中,我们想要删除 name2 键名对应的值:

$array = array(
  'name1' => 'value1',
  'name2' => 'value2',
  'name3' => 'value3'
);

为此,我们可以使用 unset() 函数,删除指定键名下的值:

unset($array['name2']);

执行上述代码后,$array 数组将会变为:

$array = array(
  'name1' => 'value1',
  'name3' => 'value3'
);

通过 unset() 函数可以很轻松地删除一个数组中的指定键名的值,这在 PHP 中是一种非常常见的操作。

  1. 删除所有含有指定值的项

在 PHP 中,删除所有含有指定值的项,需要使用语言内置的函数:array_filter() 函数和匿名函数。

array_filter() 函数允许我们对数组进行筛选,只保留其中符合特定条件的元素。因此,如果我们想要删除所有含有指定值的项,只需要筛选掉所有符合条件的元素即可。

让我们看看一个例子,假设我们有一个下面的数组,我们需要删除所有值为 value2 的项。

$array = array(
  'name1' => 'value1',
  'name2' => 'value2',
  'name3' => 'value2'
);

为了删除所有值为 value2 的项,我们首先要定义一个匿名函数,这个函数将会筛选数组中所有不含有指定值的项,返回一个新数组。

以下是匿名函数的代码:

$needle = 'value2';
$filtered_array = array_filter($array, function ($value) use ($needle) {
    return $value != $needle;
});

在上述代码中,我们首先定义了一个 $needle 变量,用来存储需要筛选掉的值。紧接着,我们使用了 array_filter() 函数,在匿名函数中采用比较操作符排除所有包含 $needle 变量的元素,然后返回剩余元素组成的新数组。

运行上述代码后,$filtered_array 数组会得到下面的结果:

$array = array(
  'name1' => 'value1'
);

上述代码通过 array_filter() 函数和匿名函数完成了删除所有含有指定值的项,得到了合适的数组。

总结

在 PHP 中,删除数组中的指定键值是一个常见的操作。我们可以使用 unset() 函数轻松地删除某个指定键名对应的值。如果我们需要删除所有含有指定值的项,则需要使用 array_filter()rrreee

Dazu können wir die Funktion unset() verwenden um den angegebenen Schlüsselwert unter dem Namen zu löschen: 🎜rrreee🎜Nach der Ausführung des obigen Codes wird das Array $array zu: 🎜rrreee🎜Ein Array kann einfach über unset() gelöscht werden. Funktion Der Wert des angegebenen Schlüsselnamens in PHP ist eine sehr häufige Operation. 🎜
    🎜Alle Elemente mit einem angegebenen Wert löschen🎜🎜🎜Um in PHP alle Elemente mit einem angegebenen Wert zu löschen, müssen Sie die integrierte Funktion der Sprache verwenden: array_filter()-Funktion und anonyme Funktionen. 🎜🎜<code>array_filter() Die Funktion ermöglicht es uns, das Array zu filtern und nur die Elemente beizubehalten, die bestimmte Bedingungen erfüllen. Wenn wir also alle Elemente mit einem bestimmten Wert löschen möchten, müssen wir nur alle Elemente herausfiltern, die die Kriterien erfüllen. 🎜🎜Sehen wir uns ein Beispiel an: Angenommen, wir haben unten ein Array und müssen alle Elemente mit dem Wert value2 entfernen. 🎜rrreee🎜Um alle Elemente mit einem Wert von value2 zu löschen, müssen wir zunächst eine anonyme Funktion definieren. Diese Funktion filtert alle Elemente im Array, die den angegebenen Wert nicht enthalten, und gibt einen zurück neues Array. 🎜🎜Das Folgende ist der Code der anonymen Funktion: 🎜rrreee🎜Im obigen Code definieren wir zunächst eine $needle-Variable, um die Werte zu speichern, die herausgefiltert werden müssen. Als nächstes verwenden wir die Funktion array_filter(), verwenden Vergleichsoperatoren in der anonymen Funktion, um alle Elemente auszuschließen, die die Variable $needle enthalten, und geben dann ein neues Array zurück, das aus dem besteht verbleibende Elemente. 🎜🎜Nachdem der obige Code ausgeführt wurde, erhält das Array $filtered_array das folgende Ergebnis: 🎜rrreee🎜Der obige Code verwendet die Funktion array_filter() und die anonyme Funktion, um das zu vervollständigen Durch das Löschen aller Dateien, die den angegebenen Wert an Elementen enthalten, wurde ein geeignetes Array erhalten. 🎜🎜Zusammenfassung🎜🎜In PHP ist das Löschen eines bestimmten Schlüsselwerts in einem Array ein häufiger Vorgang. Mit der Funktion unset() können wir den Wert, der einem angegebenen Schlüssel entspricht, ganz einfach löschen. Wenn wir alle Elemente mit einem bestimmten Wert löschen müssen, müssen wir die Funktion array_filter() und anonyme Funktionen verwenden, die entsprechende Filter- und Verarbeitungsaufgaben erledigen können. Wir hoffen, dass dieser Artikel uns dabei hilft, Aufgaben im Zusammenhang mit PHP-Arrays einfacher zu bewältigen. 🎜

Das obige ist der detaillierte Inhalt vonPHP löscht den Array-Schlüsselnamen und den angegebenen Schlüsselwert. 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