php如何计算字符串长度?两种方法对比

php如何计算字符串长度?下面本篇文章给大家介绍一下php中计算字符串长度的两个内置函数strlen()、mb_strlen(),看看它们的区别。

php如何计算字符串长度?两种方法对比

使用strlen()函数

返回给定的字符串 string 的长度

返回值:成功则返回字符串 string 的长度;如果 string 为空,则返回 0

根据面试题整理的例子:

   $str = 'hello';
   echo strlen($str), &#39;<br>&#39;; //5
   
   $str1 = &#39;中国&#39;;
   echo strlen($str1), &#39;<br>&#39;; //6

   echo strlen($str4), &#39;<br>&#39;; //0

UTF-8 编码 一个中文占3个字节 gdk 编码 一个中文占 2字节

下面 为 gdk 编码

$str2 = &#39;hello&#39;;
echo strlen($str2), &#39;<br>&#39;; //5
$str3 = &#39;中国&#39;;
echo strlen($str3), &#39;<br>&#39;; //4

echo strlen($str4), &#39;<br>&#39;; //0

使用mb_strlen()函数

— 获取字符串的长度

返回值:返回具有 encoding 编码的 字符串 str 包含的字符数。如果给定的 encoding 无效则返回 FALSE encoding 为字符编码。

$str = &#39;你好中国&#39;; 
echo strlen($str), &#39;<br>&#39;; //12
$str1 = &#39;你好中国&#39;;
echo mb_strlen($str1, &#39;utf-8&#39;), &#39;<br>&#39;; //4

gbk 两个字节一个字符

strlen 是计算字符串 ‘字节’ 长度 – 字符串长度

mb_strlen 是计算字符串 ‘字符’ 长度

推荐学习:《PHP视频教程》

以上就是php如何计算字符串长度?两种方法对比的详细内容,更多请关注其它相关文章!