Heim >Backend-Entwicklung >PHP-Tutorial >Wie filtere ich ein mehrdimensionales Array mithilfe des partiellen String-Matchings in PHP effizient?

Wie filtere ich ein mehrdimensionales Array mithilfe des partiellen String-Matchings in PHP effizient?

Mary-Kate Olsen
Mary-Kate OlsenOriginal
2024-11-29 19:09:14688Durchsuche

How to Efficiently Filter a Multidimensional Array Using Partial String Matching in PHP?

Multidimensionales Array basierend auf teilweiser Übereinstimmung des Suchwerts filtern

Das Filtern mehrdimensionaler Arrays kann oft eine Herausforderung darstellen, insbesondere bei der Suche nach teilweisen Übereinstimmungen. In diesem Artikel wird eine Methode zum effizienten Filtern eines Arrays mithilfe von array_filter vorgestellt, um Elemente mit Text zu finden, der teilweise mit einem bestimmten Suchwert übereinstimmt.

Betrachten Sie das folgende Beispiel:

$array = [
    [
        'text' => 'I like Apples',
        'id' => '102923'
    ],
    [
        'text' => 'I like Apples and Bread',
        'id' => '283923'
    ],
    [
        'text' => 'I like Apples, Bread, and Cheese',
        'id' => '3384823'
    ],
    [
        'text' => 'I like Green Eggs and Ham',
        'id' => '4473873'
    ]
];

Lassen Sie uns dieses Array filtern die Nadel „Brot“:

$search_text = 'Bread';

$filtered_array = array_filter($array, function($el) use ($search_text) {
    return (strpos($el['text'], $search_text) !== false);
});

Das Ergebnis wird folgendes sein:

[
    [
        'text' => 'I like Apples and Bread',
        'id' => '283923'
    ],
    [
        'text' => 'I like Apples, Bread, and Cheese',
        'id' => '3384823'
    ]
];

Dies Die Lösung verwendet array_filter, um eine Rückruffunktion zu übergeben, die mithilfe von strpos.

den Textwert jedes Elements auf eine teilweise Übereinstimmung mit $search_text überprüft

Das obige ist der detaillierte Inhalt vonWie filtere ich ein mehrdimensionales Array mithilfe des partiellen String-Matchings in PHP effizient?. 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