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

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

使用strlen()函数

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

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

根据面试题整理的例子:

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

   echo strlen($str4), '<br>'; //0

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

下面 为 gdk 编码

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

echo strlen($str4), '<br>'; //0

使用mb_strlen()函数

获取字符串的长度

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

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

gbk 两个字节一个字符

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

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

推荐学习:《PHP教程

相关文章

统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...
前言 之前做了微信登录,所以总结一下微信授权登录并获取用户...
FastAdmin是我第一个接触的后台管理系统框架。FastAdmin是一...
之前公司需要一个内部的通讯软件,就叫我做一个。通讯软件嘛...
统一支付是JSAPI/NATIVE/APP各种支付场景下生成支付订单,返...