Maison  >  Article  >  développement back-end  >  Comment faire une requête floue sur un tableau en PHP

Comment faire une requête floue sur un tableau en PHP

PHPz
PHPzoriginal
2023-04-12 13:57:03721parcourir

En PHP, le tableau est l'une des structures de données couramment utilisées. Parfois, nous devons effectuer des requêtes floues sur des tableaux pour trouver des données spécifiques. Cet article explique comment effectuer des requêtes floues sur des tableaux en PHP.

  1. Qu'est-ce qu'une requête floue

Une requête floue est un moyen d'interroger des données dans une base de données ou un autre système de stockage de données. En utilisant des caractères génériques et des caractères spéciaux, vous pouvez faire correspondre des données contenant des modèles spécifiques.

  1. Requête floue d'un tableau PHP

En PHP, nous pouvons utiliser certaines fonctions pour effectuer une requête floue sur des tableaux. Voici quelques fonctions couramment utilisées :

  • array_filter : Cette fonction peut filtrer les valeurs d'un tableau et renvoyer un nouveau tableau. Vous pouvez utiliser une fonction de rappel pour définir les valeurs à filtrer.

    Exemple de code :

    $arr = array('apple', 'banana', 'cherry', 'date');
    $result = array_filter($arr, function($value) {
        return strpos($value, 'a') !== false;
    });
    print_r($result); // 输出array('apple', 'banana');

    Dans le code ci-dessus, la fonction array_filter est utilisée pour filtrer les valeurs​​contenant la lettre « a » dans le tableau. La fonction strpos dans la fonction de rappel est utilisée pour déterminer si une chaîne contient une autre chaîne.

  • preg_grep : Cette fonction effectue une correspondance d'expression régulière sur les valeurs d'un tableau et renvoie un nouveau tableau contenant toutes les correspondances.

    Exemple de code :

    $arr = array('001', '002', '003', '011', '012', '013');
    $result = preg_grep("/01[1-3]/", $arr);
    print_r($result); // 输出array('011', '012', '013');

    Dans le code ci-dessus, la fonction preg_grep est utilisée pour faire correspondre les valeurs du tableau qui commencent par « 01 » et se terminent par « 1 », « 2 » ou « 3 ».

  • array_walk_recursive : Cette fonction peut parcourir tous les éléments d'un tableau multidimensionnel et une fonction de rappel peut être utilisée pour traiter chaque élément.

    Exemple de code :

    $arr = array(
        'fruit' => array('apple', 'banana', 'cherry'),
        'color' => array('red', 'yellow', 'green')
    );
    $result = array();
    array_walk_recursive($arr, function ($value, $key) use (&$result) {
        if (strpos($value, 'a') !== false) {
            $result[] = $value;
        }
    });
    print_r($result); // 输出array('apple', 'banana');

    Dans le code ci-dessus, la fonction array_walk_recursive est utilisée pour parcourir un tableau contenant des tableaux multidimensionnels. La fonction strpos dans la fonction de rappel est utilisée pour déterminer si une chaîne contient une autre chaîne.

  1. Résumé

En PHP, nous pouvons utiliser certaines fonctions pour effectuer des requêtes floues sur des tableaux. Ces fonctions nous aident à trouver des modèles spécifiques dans les données. Dans le développement réel, il est nécessaire de sélectionner la fonction appropriée pour effectuer une requête floue en fonction de besoins spécifiques.

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