Dans l'article précédent, nous avons présenté la méthode de calcul de la longueur du tableau. Si vous êtes intéressé, vous pouvez cliquer sur le lien pour voir → "Apprentissage des tableaux PHP : Calcul de la longueur du tableau d'un tableau bidimensionnel". Aujourd'hui, nous allons examiner les chaînes et apprendre à calculer la longueur des chaînes anglaises.
Il existe deux fonctions principales utilisées pour calculer la longueur des chaînes en PHP : strlen() et mb_strlen(). Utilisons des exemples de code pour comprendre comment les deux fonctions calculent la longueur des chaînes anglaises.
1. La fonction strlen()
<?php header("Content-type:text/html;charset=utf-8"); $str = "hello world!"; echo '字符串 “'.$str.'” 的长度为:'.strlen($str).'<br>'; ?>
strlen($string)
n'accepte qu'un seul paramètre $string
(la chaîne à calculer If). Si la valeur passée en paramètre est vide, 0 est renvoyé. Dans la fonction strlen(), ,
(virgule en anglais), les chiffres, les lettres anglaises, le point décimal .
, le trait de soulignement, l'espace, etc. n'occupent qu'un seul caractère. . strlen($string)
函数只接受一个参数$string
(要计算的字符串),如果该参数传递的值为空则返回 0。strlen()函数中,
(英文状态下的逗号)、数字、英文字母、小数点.
、下划线、空格等都只占一个字符长度。
在上例中,$str
字符串包含10个英文字母、1个空格和1个英文感叹号,共12个字符,因此输出结果为:
但strlen()函数不适合用于计算中文字符串长度,因为在该函数中一个 GB2312 编码的汉字占两个字符长度,一个 UTF-8 编码的汉字占三个字符长度。
2、mb_strlen()函数
<?php header("Content-type:text/html;charset=utf-8"); $str = "hello world!,#%&*@"; echo '字符串 “'.$str.'” 的长度为:'.mb_strlen($str).'<br>'; ?>
同样的,mb_strlen()函数中,
、数字、英文字母、小数点.
、下划线、空格、#
、%
、&
、*
、@
$str
contient 10 lettres anglaises, 1 espace et 1 point d'exclamation anglais, soit un total de 12 caractères, le résultat de sortie est donc :
Mais la fonction strlen() n'est pas approprié pour une utilisation Il est utilisé pour calculer la longueur des chaînes chinoises, car dans cette fonction, un caractère chinois codé GB2312 occupe deux caractères de longueur et un caractère chinois codé UTF-8 occupe trois caractères de longueur.
2. Fonction mb_strlen()
rrreee De même, dans la fonction mb_strlen(), ,
, chiffres, lettres anglaises, point décimal .
, soulignement, espace , #
, %
, &
, *
et @
n'occupent qu'un seul caractère en longueur Mais les caractères chinois n'occupent qu'un seul caractère en longueur.
Dans l'exemple ci-dessus, la chaîne $str contient 10 lettres anglaises, 1 espace, 1 virgule, 6 autres symboles anglais, un total de 18 caractères, le résultat de sortie est donc :
🎜🎜 Les fonctions strlen() et mb_strlen() peuvent être utilisées pour calculer la longueur des chaînes anglaises ; généralement strlen() suffit, mais parfois pour des chaînes mixtes chinoises et anglaises, nous devons utiliser mb_strlen(). 🎜🎜D'accord, c'est tout. Si vous voulez savoir autre chose, vous pouvez cliquer ici. → →🎜Tutoriel vidéo php🎜🎜🎜Enfin, je vous recommande de lire un cours classique "🎜PHP String Processing (Jade Girl Heart Sutra Edition)🎜", c'est gratuit~ Venez apprendre ! 🎜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!