Maison >développement back-end >Problème PHP >Requête floue dans un tableau php

Requête floue dans un tableau php

王林
王林original
2023-05-19 13:30:37731parcourir

PHP est un langage de programmation puissant couramment utilisé pour le développement Web. En PHP, le tableau est une structure de données très importante et est largement utilisé dans divers scénarios, tels que le stockage de données, la transmission de données, le tri, le filtrage, etc. Dans le traitement des tableaux, les requêtes floues constituent une exigence importante, et cet article se concentre sur cette exigence.

1. Définition de la requête floue

En PHP, la requête floue fait référence à l'interrogation de toutes les positions où des fragments de texte apparaissent dans un tableau selon certaines règles de correspondance. Cette règle de correspondance peut être une expression régulière, une correspondance de chaîne, un caractère générique, etc.

2. Implémentation d'une requête floue

En PHP, il existe de nombreuses façons d'implémenter une requête floue. L'auteur présentera les méthodes d'implémentation suivantes.

  1. Utiliser des expressions régulières

Les expressions régulières sont un puissant outil de correspondance qui peut être utilisé pour rechercher et remplacer des chaînes. En PHP, en utilisant la fonction preg_match, vous pouvez effectuer une correspondance régulière sur un tableau et interroger le fragment de texte spécifié. Voici un exemple de code simple :

<?php
$array = array("apple", "banana", "kiwi", "pear", "peach");
$pattern = "/^p/";
$results = array();
foreach ($array as $key => $value) {
    if (preg_match($pattern, $value)) {
        $results[] = $key;
    }
}
print_r($results);
?>

Le résultat de sortie du code ci-dessus est :

Array
(
    [0] => 3
    [1] => 4
)

Comme vous pouvez le voir, le programme effectue une correspondance régulière sur le tableau, des requêtes pour les fragments de texte commençant par la lettre "p", et renvoie leur contenu à l'emplacement du tableau dans.

  1. Utiliser la correspondance de chaînes

La correspondance de chaînes permet de déterminer si un fragment de texte spécifié est inclus dans une chaîne. En PHP, vous pouvez utiliser la fonction strstr pour effectuer une correspondance de chaîne sur un tableau. Ce qui suit est un code d'implémentation simple :

<?php
$array = array("apple", "banana", "kiwi", "pear", "peach");
$search = "a";
$results = array();
foreach ($array as $key => $value) {
    if (strstr($value, $search)) {
        $results[] = $key;
    }
}
print_r($results);
?>

Le résultat de sortie du code ci-dessus est :

Array
(
    [0] => 0
    [1] => 1
    [2] => 2
)

Comme vous pouvez le voir, le programme interroge les fragments de texte contenant la lettre "a" en effectuant une correspondance de chaîne sur le tableau et renvoie les en position dans le tableau.

  1. Utiliser des caractères génériques

Un caractère générique fait référence à une règle de correspondance floue qui représente un ou plusieurs caractères. En PHP, vous pouvez utiliser la fonction fnmatch pour effectuer une correspondance avec des caractères génériques sur un tableau. Ce qui suit est un code d'implémentation simple :

<?php
$array = array("apple", "banana", "kiwi", "pear", "peach");
$pattern = "*a*";
$results = array();
foreach ($array as $key => $value) {
    if (fnmatch($pattern, $value)) {
        $results[] = $key;
    }
}
print_r($results);
?>

Le résultat de sortie du code ci-dessus est :

Array
(
    [0] => 0
    [1] => 1
    [2] => 4
)

Comme vous pouvez le voir, le programme interroge les fragments de texte contenant la lettre "a" en effectuant une correspondance avec des caractères génériques sur le tableau et renvoie les à l'emplacement du tableau.

3. Résumé

En résumé, les requêtes floues sont une exigence très importante dans le traitement des tableaux PHP. Pendant le processus d'implémentation, vous pouvez effectuer une requête de correspondance complète sur le tableau en utilisant des expressions régulières, une correspondance de chaînes, des caractères génériques, etc. pour répondre à différents besoins.

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