Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich ein PHP-Array filtern, um nur Elemente mit einem bestimmten Wert beizubehalten und die Originalschlüssel beizubehalten?

Wie kann ich ein PHP-Array filtern, um nur Elemente mit einem bestimmten Wert beizubehalten und die Originalschlüssel beizubehalten?

DDD
DDDOriginal
2024-12-23 21:06:11891Durchsuche

How Can I Filter a PHP Array to Keep Only Elements with a Specific Value, Preserving Original Keys?

Filtern eines Arrays basierend auf einer Wertbedingung mit PHP

Ein Array kann mithilfe integrierter PHP-Funktionen gemäß einer angegebenen Bedingung gefiltert werden . Stellen Sie sich das folgende Szenario vor:

Ziel:

Filtern Sie ein Array, um Elemente beizubehalten, deren Wert gleich 2 ist, und entfernen Sie alle anderen, wobei die ursprünglichen Schlüssel erhalten bleiben.

Original-Array:

$fullArray = array('a' => 2, 'b' => 4, 'c' => 2, 'd' => 5, 'e' => 6, 'f' => 2);

Erwartet Ergebnis:

array('a' => 2, 'c' => 2, 'f' => 2);

Lösung:

Um dies zu erreichen, können wir die Funktion array_filter() mit einer benutzerdefinierten Rückruffunktion verwenden, die die Wertbedingung auswertet . Hier ist ein Beispiel:

function filterArray($value){
    return ($value == 2);
}

$filteredArray = array_filter($fullArray, 'filterArray');

foreach($filteredArray as $k => $v){
    echo "$k = $v";
}

In dieser Lösung:

  • Die Funktion filterArray() dient als Rückruffunktion für array_filter() und testet den Wert jedes Elements anhand der Bedingung (gibt zurück). wahr für Gleichheit mit 2).
  • Die Funktion array_filter() wendet den Rückruf auf jedes Element an und gibt ein neues Array zurück, das nur die Elemente enthält, die übergeben werden die Bedingung.
  • Das resultierende $filteredArray enthält die gewünschten Elemente unter Beibehaltung der Originalschlüssel.
  • Schließlich durchläuft eine Schleife das gefilterte Array, um die gefilterten Elemente anzuzeigen.

Diese Lösung bietet eine einfache und effiziente Möglichkeit, ein Array basierend auf einer bestimmten Wertbedingung zu filtern und dabei die Originalschlüssel beizubehalten und so das gewünschte Ergebnis zu erzielen.

Das obige ist der detaillierte Inhalt vonWie kann ich ein PHP-Array filtern, um nur Elemente mit einem bestimmten Wert beizubehalten und die Originalschlüssel beizubehalten?. 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