Heim >Backend-Entwicklung >PHP-Tutorial >Wie kann ich ein zweidimensionales Array in PHP basierend auf dem Wert eines bestimmten Schlüssels filtern?

Wie kann ich ein zweidimensionales Array in PHP basierend auf dem Wert eines bestimmten Schlüssels filtern?

Patricia Arquette
Patricia ArquetteOriginal
2024-12-02 10:55:11156Durchsuche

How Can I Filter a Two-Dimensional Array in PHP Based on a Specific Key's Value?

Filtern eines zweidimensionalen Arrays nach einem bestimmten Wert

Das Filtern eines mehrdimensionalen Arrays nach einem bestimmten Wert kann durch verschiedene Programmiertechniken erreicht werden . In PHP bietet die Funktion array_filter eine praktische Methode, um dies zu erreichen.

Filtern eines zweidimensionalen Arrays nach einem bestimmten Schlüsselwert

Um ein zweidimensionales Array zu filtern Um ein dimensionales Array um einen bestimmten Wert zu erweitern, kann man die Funktion array_filter zusammen mit einer Callback-Funktion verwenden. Die Rückruffunktion sollte jedes Element des Arrays auswerten und „true“ zurückgeben, wenn es die gewünschten Kriterien erfüllt.

Betrachten Sie beispielsweise das gegebene Array, in dem wir nach dem Schlüssel „Name“ mit dem Wert „CarEnquiry“ filtern möchten ':

$arr = [
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'CarEnquiry',
        'status' => 'NEW',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'CarEnquiry',
        'status' => 'CALL1',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'Finance',
        'status' => 'CALL2',
        'appointment' => 0
    ],
    [
        'interval' => '2014-10-26',
        'leads' => 0,
        'name' => 'Partex',
        'status' => 'CALL3',
        'appointment' => 0
    ]
];

Der folgende Codeausschnitt zeigt, wie das Array gefiltert wird:

$new = array_filter($arr, function ($var) {
    return ($var['name'] == 'CarEnquiry');
});

In diesem Fall die Callback-Funktion ($var['name'] == 'CarEnquiry') prüft, ob der 'name'-Wert für jedes Array-Element gleich 'CarEnquiry' ist. Wenn „true“, ist das Element im gefilterten Array ($new) enthalten.

Filtern nach austauschbaren Werten

Wenn der Filterwert austauschbar sein muss, z B. „CarAnfrage“ oder „Finanzen“, kann eine leichte Änderung an der Rückruffunktion vorgenommen werden:

$filterBy = 'CarEnquiry'; // or Finance etc.

$new = array_filter($arr, function ($var) use ($filterBy) {
    return ($var['name'] == $filterBy);
});

Von Durch die Einführung der Variablen $filterBy werden die Filterkriterien dynamisch und ermöglichen die Filterung nach unterschiedlichen Werten nach Bedarf.

Das obige ist der detaillierte Inhalt vonWie kann ich ein zweidimensionales Array in PHP basierend auf dem Wert eines bestimmten Schlüssels filtern?. 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