Maison > développement back-end > tutoriel php > Comment puis-je filtrer un tableau multidimensionnel à l'aide de la correspondance partielle de chaînes en PHP ?

Comment puis-je filtrer un tableau multidimensionnel à l'aide de la correspondance partielle de chaînes en PHP ?

Susan Sarandon
Libérer: 2024-12-02 02:36:09
original
224 Les gens l'ont consulté

How Can I Filter a Multidimensional Array Using Partial String Matching in PHP?

Filtrage des tableaux multidimensionnels en fonction d'une correspondance partielle de la valeur de recherche

Dans certains scénarios, il devient nécessaire de filtrer les données stockées dans des tableaux multidimensionnels en fonction de une correspondance partielle d'une valeur de recherche spécifiée.

Supposons que nous ayons un tableau structuré comme suit :

$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'
    ]
];
Copier après la connexion

Supposons que nous souhaitions rechercher une aiguille spécifique, telle que "Pain". Pour filtrer le tableau et récupérer les éléments qui contiennent la correspondance partielle, nous pouvons utiliser la fonction array_filter.

$search_text = 'Bread';

$filtered_array = array_filter($array, function($element) use ($search_text) {
    return (strpos($element['text'], $search_text) !== false);
});
Copier après la connexion

La fonction array_filter accepte deux paramètres : le tableau d'entrée et une fonction de rappel. La fonction de rappel est chargée d'évaluer si chaque élément doit être conservé ou supprimé du tableau. Dans notre cas, la fonction de rappel vérifie si le champ 'texte' de l'élément contient le terme de recherche spécifié. Si tel est le cas, il renvoie true, indiquant que l'élément doit être conservé.

Lors de l'exécution, le filtered_array contiendra les éléments suivants :

[
    [
        'text' => 'I like Apples and Bread',
        'id'   => '283923'
    ],
    [
        'text' => 'I like Apples, Bread, and Cheese',
        'id'   => '3384823',
    ]
]
Copier après la connexion

Cette approche filtre efficacement le tableau multidimensionnel, renvoyant uniquement les éléments qui satisfont à la condition de correspondance partielle.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal