Maison  >  Article  >  développement back-end  >  Fonction en PHP8 : str_ends_with() - détermine si la chaîne se termine par le caractère spécifié

Fonction en PHP8 : str_ends_with() - détermine si la chaîne se termine par le caractère spécifié

WBOY
WBOYoriginal
2023-05-17 09:22:351998parcourir

Avec la sortie de la version PHP7, les performances du langage PHP ont été rapidement améliorées et la dernière version de PHP8 a ajouté de nombreuses nouvelles fonctionnalités et améliorations. L'une des nouvelles fonctionnalités est la fonction str_ends_with(), qui vous permet de déterminer si. une chaîne se terminant par un caractère spécifié devient plus simple et plus intuitive.

Définition de la fonction Str_ends_with()

La fonction str_ends_with() est une nouvelle fonction de traitement de chaîne en PHP8. Sa fonction est de déterminer si une chaîne se termine par un caractère ou une sous-chaîne spécifié. Plus précisément, il est défini comme suit :

bool str_ends_with(string $haystack, string $needle): bool

Où, $haystack représente la chaîne à vérifier et $needle représente le caractère ou la sous-chaîne à trouver. Renvoie vrai si la fin de la chaîne $haystack est la même que $needle ; sinon, renvoie faux ;

Exemples d'utilisation de la fonction str_ends_with()

Maintenant, regardons quelques exemples d'utilisation de la fonction str_ends_with(). Tout d'abord, supposons que nous ayons une chaîne $url, représentant une URL :

$url = "https://www.example.com";

Maintenant, nous voulons déterminer si cette URL se termine par .com. Nous pouvons utiliser la fonction str_ends_with() pour y parvenir :

if (str_ends_with($url, ".com")) {
    echo "这是一个.com网址";
} else {
    echo "这不是一个.com网址";
}

Exécutez le code ci-dessus. , le résultat devrait être C'est comme ceci :

这是一个.com网址

De plus, la fonction str_ends_with() prend également en charge la détermination si une chaîne se termine par l'un des plusieurs caractères ou sous-chaînes. Par exemple :

if (str_ends_with($url, ["com", "net", "org"])) {
    echo "这是一个常见的顶级域名网址";
} else {
    echo "这不是一个常见的顶级域名网址";
}

Exécutez le code ci-dessus, le résultat devrait être comme ceci :

这是一个常见的顶级域名网址

str_ends_with() La fonction peut également être utilisée pour déterminer si une chaîne se termine par une chaîne vide. Par exemple :

if (str_ends_with($url, "")) {
    echo "这是一个空字符串";
} else {
    echo "这不是一个空字符串";
}

Exécutez le code ci-dessus, le résultat devrait ressembler à ceci :

这不是一个空字符串

Pourquoi la fonction str_ends_with() est très pratique

Dans le développement réel, nous avons souvent besoin de traiter des chaînes, comme l'interception, le remplacement et fractionnement Attendre les opérations. Parmi eux, il est très courant de déterminer si une chaîne se termine par un caractère ou une sous-chaîne spécifié. Dans les versions précédentes, nous devrons peut-être utiliser la fonction substr() et la fonction strlen() pour réaliser cette fonction, par exemple :

$url = "https://www.example.com";
$suffix = ".com";
if (substr($url, -strlen($suffix)) === $suffix) {
    echo "这是一个.com网址";
} else {
    echo "这不是一个.com网址";
}

Bien que l'utilisation de la fonction substr() et de la fonction strlen() puisse également atteindre l'objectif, le montant du code est long et peu intuitif ; et la fonction substr() est sujette aux erreurs de limites. En comparaison, la fonction str_ends_with() est plus simple et plus pratique, et peut grandement améliorer l'efficacité du développement et la lisibilité du code.

Bien sûr, la fonction str_ends_with() n'est pas omnipotente et ses scénarios d'utilisation sont également limités. Par exemple, si $needle lui-même fait partie de $haystack, la fonction str_ends_with() sera toujours évaluée à true. Par conséquent, lors de l’utilisation, le jugement et l’ajustement doivent être effectués en fonction de la situation réelle.

En bref, avec la sortie de PHP8, la fonction str_ends_with() apporte plus de commodité aux développeurs. Je crois que dans les futurs travaux de développement, nous le verrons jouer un rôle encore plus important !

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