首页 > php教程 > php手册 > 正文

PHP strlen()和mb

php中文网
发布: 2016-06-06 20:00:27
原创
1628人浏览过

strlen — 获取字符串长度 说明 int strlen ( string $string ) 返回给定的字符串 string 的长度。 参数 string 需要计算长度的 字符串 。 返回 成功则返回字符串 string 的长度;如果 string 为空,则返回 0。 mb_strlen — 获取字符串的长度 说明 mixed mb

strlen获取字符串长度

说明

int strlen ( string $string )

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

参数

string  需要计算长度的字符串

返回值

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


mb_strlen 获取字符串的长度

说明

mixed mb_strlen ( string $str[, string $encoding = mb_internal_encoding() ] )

获取一个 string 的长度。

参数

str  要检查长度的字符串
encoding  encoding参数为字符编码。如果省略,则使用内部字符编码。

返回值

返回具有 encoding 编码的字符串 str 包含的字符数。 多字节的字符被计为 1。

如果给定的 encoding 无效则返回 FALSE

上面是手册中关于两个函数的解释,乍一看,好像都差不多。

下面通过实例,来讲解两者之间的区别。

//文件的编码方式为UTF8
$str='字a符1串b长2度';  
echo strlen($str).'<br>';//19
echo mb_strlen($str,'utf-8').'<br>';//9
登录后复制

再看下一个例子
<?php
//文件的编码方式为gb2312
$str='字a符1串b长2度'; 
echo strlen($str).'<br>';//14
echo mb_strlen($str,'utf-8').'<br>';//9
?>
登录后复制

结果分析:在strlen字符长度时,一个UTF8的中文字符算3个长度,

立即学习PHP免费学习笔记(深入)”;

商城购物系统
商城购物系统

商城购物系统是一个以php+MySQL进行开发的可塑性极强的电子商品平台;商城购物系统可自定义商品栏目内容,包含分销功能,分销管理、分销订单提成完整功能,商品加购物车、商品支付、商品发货等一系列流程,包括pc端和手机H5端。

商城购物系统 0
查看详情 商城购物系统

所以“字a符1串b长2度”长度是3+1+3+1+3+1+3+1+3=19,

在mb_strlen计算时,选定内码为UTF8,则会将一个中文字符当作长度1来计算,所以“字a符1串b长2度”长度是9 .

在gb2312中,strlen计算字符长度时,一个中文字符算2个长度。

另外,需要注意的是,mb_strlen并不是PHP核心函数,使用前需要确保在php.ini中加载php_mbstring.dll,否则会出现未定义函 数的问题。



相关标签:
php
PHP速学教程(入门到精通)
PHP速学教程(入门到精通)

PHP怎么学习?PHP怎么入门?PHP在哪学?PHP怎么学才快?不用担心,这里为大家提供了PHP速学教程(入门到精通),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号