Maison >développement back-end >tutoriel php >Comment vérifier si une chaîne contient un élément d'un tableau (insensible à la casse) ?

Comment vérifier si une chaîne contient un élément d'un tableau (insensible à la casse) ?

DDD
DDDoriginal
2024-11-12 10:49:02383parcourir

How to Check if a String Contains Any Element from an Array (Case-Insensitive)?

Vérification du confinement de chaînes dans un tableau (insensible à la casse)

Question :

Comment vérifier une chaîne pour déterminer si elle inclut l'un des éléments d'un tableau, quelles que soient les différences de casse ?

Exemple de code :

$string = 'My nAmE is Tom.';
$array = array("name", "tom");
if (contains($string, $array)) {
    // Perform an action indicating that the string contains an element from the array
}

Solution :

Il n'existe aucune fonction intégrée conçue spécifiquement à cet effet. Cependant, une fonction contain() personnalisée peut être créée comme suit :

function contains($str, array $arr)
{
    foreach ($arr as $a) {
        if (stripos($str, $a) !== false) {
            return true;
        }
    }
    return false;
}

Explication :

La fonction contain() parcourt chaque élément du $arr tableau. Pour chaque élément, il utilise stripos() pour vérifier s'il existe dans la chaîne $str, en tenant compte de l'insensibilité à la casse. Si un élément est trouvé dans la chaîne, la fonction renvoie vrai. Sinon, il renvoie false, indiquant qu'aucun des éléments du tableau n'a été trouvé dans la chaîne.

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