PHP每日一练:获取字符串长度strlen和mb_strlen函数

获取字符串长度的常用函数 是strlen,另外还有一个比较特别一些的 mb_strlen

先看看strlen 函数

参数: strlen()函数只接受一个参数$ string,这是必需的。此参数表示需要返回其长度的字符串。

返回值: strlen()函数返回给定字符串($string)的长度,包括该字符串中包含的所有空格和特殊字符。

下面通过示例来看看strlen()函数的使用方法。

<?php 
    $str = "hello PHP"; 
       
    // 输出字符串的长度
    echo strlen($str); 
?>

输出:9

再看看另外一个函数和strlen做一个对比

<?php
echo mb_internal_encoding();
echo "<br/>";
$str="D.C is 中国人"; //
echo strlen($str);
echo "<br>";
echo mb_strlen($str,"utf-8"); 
echo "<br/>";
echo mb_strlen($str,"gbk");
?>

输出结果是:

UTF-8

16
10
12

在strlen计算中,对待一个UTF8的中文字符,处理为3个字节长度,所以为3+1+2+1+9=16个

当mb_strlen的内码选择为UTF-8的时候,则会将中文字符当成一个字符,所以为3+1+2+1+3=10;

当mb_strlen的内码选择为gbk的时候,一个中文字符当成1.5个字符来处理来处理,最后就是:3+1+2+1+4.5=11.5

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享