Heim >Backend-Entwicklung >PHP-Tutorial >Wie entferne ich Elemente aus mehrdimensionalen Arrays basierend auf einem bestimmten Schlüsselwert?

Wie entferne ich Elemente aus mehrdimensionalen Arrays basierend auf einem bestimmten Schlüsselwert?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-10-18 11:45:03473Durchsuche

How to Remove Elements from Multidimensional Arrays Based on a Specific Key Value?

Entfernen von Elementen aus mehrdimensionalen Arrays basierend auf dem Wert

In verschiedenen Programmierszenarien besteht die Notwendigkeit, bestimmte Elemente aus mehrdimensionalen Arrays basierend auf bestimmten Werten zu entfernen Kriterien. Dieser Artikel befasst sich mit dem Fall, dass Sie auf ein Array mit Unterarrays stoßen, die ein Schlüssel-Wert-Paar enthalten, und Sie Unterarrays löschen möchten, deren Schlüssel mit einem bestimmten Wert übereinstimmt.

Betrachten Sie das folgende mehrdimensionale Array als Beispiel :

Array
(
    [0] => Array
        (
            [year] => 2011
        )
    [1] => Array
        (
            [year] => 2011
        )
    [2] => Array
        (
            [year] => 2010
        )
    [3] => Array
        (
            [year] => 2004
        )
)

In diesem Array wollen wir alle Unterarrays löschen, in denen der Schlüssel „Jahr“ gleich 2011 ist.

Um dies zu erreichen, bietet PHP 5.2 die folgende Funktion:

function removeElementWithValue($array, $key, $value){
     foreach ($array as $subKey => $subArray) {
          if ($subArray[$key] == $value) {
               unset($array[$subKey]);
          }
     }
     return $array;
}

Durch Aufrufen dieser Funktion wie folgt:

$array = removeElementWithValue($array, "year", 2011);

Das resultierende Array enthält nur die Unterarrays mit anderen „Jahres“-Werten als 2011:

Array
(
    [0] => Array
        (
            [year] => 2010
        )
    [1] => Array
        (
            [year] => 2004
        )
)

Dieser Ansatz filtert effizient Unterarrays basierend auf bestimmten Wertkriterien aus mehrdimensionalen Arrays heraus.

Das obige ist der detaillierte Inhalt vonWie entferne ich Elemente aus mehrdimensionalen Arrays basierend auf einem bestimmten 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