Maison > développement back-end > tutoriel php > Comment calculer la longueur d'une chaîne en php

Comment calculer la longueur d'une chaîne en php

怪我咯
Libérer: 2023-03-12 14:16:02
original
10784 Les gens l'ont consulté

Cet article présente principalement la méthode d'utilisation de la fonction PHP pour calculer la longueur de la chaîne chinoise et anglaise. L'exemple compare la méthode d'implémentation de la fonction PHP avec l'expression régulière. La méthode d'implémentation a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer

Cet article décrit la méthode d'utilisation des fonctions PHP pour calculer la longueur des chaînes chinoises et anglaises. Partagez-le avec tout le monde pour votre référence. La méthode spécifique d'implémentation est la suivante :

De manière générale, tout le monde sait que les caractères anglais occupent un octet, tandis que les caractères chinois gbk occupent deux caractères et utf8 occupe trois caractères. Beaucoup de gens ont l'impression que PHP calcule la longueur. d'une chaîne par la fonction strlen(), en fait ce n'est pas le cas. Elle calcule la longueur des octets plutôt que la longueur des caractères. Alors, comment obtenir la longueur des caractères dans une chaîne ? Il y a aussi mb_strlen().

Le code spécifique est le suivant :

Le code est le suivant :

echo $str = 'PHP点点通'; 

echo strlen($str); //3*1+3*3=12  
echo mb_strlen($str, 'gb2312'); //3*1+3*2=9  
echo mb_strlen($str, 'utf-8'); //6
Copier après la connexion

Ce qui est terrible c'est que le mb les fonctions de série ne sont pas le cœur de PHP La fonction n'est pas activée par défaut. Il existe également une méthode très simple pour décomposer la chaîne en caractères individuels via des expressions régulières. Le calcul du nombre de caractères correspond à la longueur de la chaîne. suit :

Code Comme suit :

<?php  
function _strlen($str)  
{  
        preg_match_all("/./us", $str, $matches);  
        return count(
current
($matches));  
}  
  
echo _strlen("PHP点点通");  //6  
?>
Copier après la connexion


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