Maison > développement back-end > tutoriel php > Utilisez la fonction str_contains() en PHP8 pour obtenir une correspondance rapide des chaînes

Utilisez la fonction str_contains() en PHP8 pour obtenir une correspondance rapide des chaînes

王林
Libérer: 2023-05-17 18:32:01
original
1822 Les gens l'ont consulté

Avec le développement d'Internet, le traitement des chaînes est devenu une tâche courante en programmation. Pour résoudre le problème de la correspondance des chaînes, PHP8 a introduit une nouvelle fonction str_contains(), qui peut rapidement renvoyer si une chaîne contient une chaîne spécifiée. Cette fonction sera un outil très utile pour les développeurs qui doivent effectuer fréquemment des correspondances de chaînes.

1. Utilisation de base de la fonction str_contains()
La fonction str_contains() est utilisée pour déterminer si une chaîne contient une chaîne spécifiée :

bool str_contains( string $haystack , string $needle )
where, $haystack représente la chaîne d'origine et $needle représente la chaîne à détecter. Si la chaîne d'origine contient la chaîne spécifiée, la fonction renvoie vrai, sinon elle renvoie faux.

Voici quelques exemples :

Exemple 1 :

$str1 = "Hello World!";
if (str_contains($str1, "World")) {

echo "The string contains the word 'World'";
Copier après la connexion

} else {

echo "The string does not contain the word 'World'";
Copier après la connexion

}

Le Dans l'exemple, $haystack est "Hello World!" et $needle est "World". Puisque $haystack contient $needle, la fonction retournera true et affichera la chaîne "La chaîne contient le mot 'World'".

Exemple 2 :

$str2 = "Hello World!";
if (str_contains($str2, "Universe")) {

echo "The string contains the word 'Universe'";
Copier après la connexion

} else {

echo "The string does not contain the word 'Universe'";
Copier après la connexion

}

$botte de foin dans cet exemple est " Bonjour Monde!", $needle est "Univers". Puisque $haystack ne contient pas $needle, la fonction retournera false et affichera la chaîne "La chaîne ne contient pas le mot 'Univers'".

2. Avantages de la fonction str_contains()
Auparavant, PHP disposait déjà des fonctions strstr() et strpos(), qui servent à rechercher des sous-chaînes dans des chaînes et à renvoyer leurs positions. Cependant, la fonction str_contains() présente les avantages suivants :

  1. Code plus concis
    En utilisant la fonction str_contains(), une seule ligne de code est nécessaire pour terminer la tâche de correspondance de chaîne. Par exemple :

if (str_contains($str, "needle")) {

// Code to execute if the string contains "needle"
Copier après la connexion

}

En comparaison, lorsque vous utilisez la fonction strstr() ou strpos(), vous devez effectuer un jugement conditionnel if au retour valeur. Ensuite, il peut être déterminé si la correspondance est réussie.

  1. Code plus intuitif
    La dénomination de la fonction str_contains() est très intuitive et son utilisation est plus conforme aux habitudes naturelles des programmeurs. Par rapport à d'autres fonctions, les développeurs utilisant cette fonction n'ont pas besoin de lire le document de fonction pour trouver les valeurs de paramètres appropriées, et elle est plus reconnaissable lorsqu'elle est utilisée directement.
  2. Performances plus élevées
    Après les tests, les performances de la fonction str_contains() sont comparables, voire meilleures, à celles de la fonction de correspondance de chaîne précédente. Dans le cas de gros volumes de données, la fonction str_contains() peut fournir une vitesse de correspondance plus rapide car son implémentation interne utilise un algorithme plus efficace.

3. Comment migrer le projet pour utiliser la fonction str_contains()
Si vous souhaitez utiliser la fonction str_contains() dans votre projet, vous devez vous assurer que la version PHP a été mise à niveau vers 8.0 ou supérieure. Une fois la mise à niveau terminée, vous devez modifier les emplacements de votre projet où les fonctions strstr() ou strpos() sont utilisées.

Tout d'abord, vous devez choisir l'emplacement qui doit être mis à jour en fonction de la situation réelle du projet. Si vous devez utiliser la fonction dans une grande quantité de code, vous pouvez utiliser la fonction de recherche et de remplacement pour modifier l'ancien appel de fonction par le nouvel appel de fonction.

Par exemple, changez l'appel de la fonction $strstr() :

if (strstr($haystack, $needle)) {

// ...
Copier après la connexion
Copier après la connexion

}

par l'appel de la fonction $str_contains() :

if (str_contains($ haystack, $needle)) {

// ...
Copier après la connexion
Copier après la connexion

}

De cette façon, votre projet peut commencer à utiliser la fonction str_contains().

4. Conclusion
La fonction str_contains() est l'une des fonctions de correspondance de chaînes introduites dans PHP8. Elle a de meilleures performances et est plus concise et claire à utiliser. Si vous utilisez toujours la fonction strstr() ou strpos(), il est recommandé de migrer activement vers la fonction str_contains() si nécessaire.

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!

Étiquettes associées:
source:php.cn
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal