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

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

Patricia Arquette
Patricia Arquetteoriginal
2024-12-02 14:51:12658parcourir

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

Filtrage de tableaux multidimensionnels basés sur une correspondance partielle

Dans cette tâche de programmation, nous vous présentons un scénario dans lequel vous avez besoin d'une fonction pour filtrer un tableau multidimensionnel basé sur une correspondance partielle d’une valeur de recherche. Considérons le tableau donné :

array(
 [0] =>
  array(
   ['text'] =>'I like Apples'
   ['id'] =>'102923'
 )
 [1] =>
  array(
   ['text'] =>'I like Apples and Bread'
   ['id'] =>'283923'
 )
 [2] =>
  array(
  ['text'] =>'I like Apples, Bread, and Cheese'
  ['id'] =>'3384823'
 )
 [3] =>
  array(
  ['text'] =>'I like Green Eggs and Ham'
  ['id'] =>'4473873'
 ) 
etc.. 

Nous cherchons à rechercher l'aiguille "Bread" dans le tableau et obtenons le résultat suivant :

[1] =>
  array(
   ['text'] =>'I like Apples and Bread'
   ['id'] =>'283923'
 )
 [2] =>
  array(
  ['text'] =>'I like Apples, Bread, and Cheese'
  ['id'] =>'3384823'

Pour ce faire, nous exploitons le array_filter fonction, qui nous permet de définir un rappel qui détermine les éléments à conserver dans le tableau en fonction d'une condition donnée. Dans ce scénario, nous renvoyons true si le champ 'text' contient le search_text, indiquant que l'élément doit être conservé. Une valeur de retour false supprimerait l'élément.

L'implémentation ressemble à ceci :

$search_text = 'Bread';

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

En implémentant cette méthode, vous filtrez efficacement le tableau multidimensionnel et renvoyez uniquement les éléments qui correspondent partiellement la valeur de recherche que vous spécifiez. Pour plus d'informations, reportez-vous aux ressources suivantes :

  • [PHP array_filter](https://www.php.net/manual/en/function.array-filter.php)
  • [Valeurs de retour PHP strpos](https://www.php.net/manual/en/function.strpos.php)

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:
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