• 设为首页
  • 点击收藏
  • 手机版
    手机扫一扫访问
    迪恩网络手机版
  • 关注官方公众号
    微信扫一扫关注
    迪恩网络公众号

PHP获取字符串中英文混合长度。

原作者: [db:作者] 来自: [db:来源] 收藏 邀请
 1 /**
 2  * PHP获取字符串中英文混合长度 
 3  * @param $str string 字符串
 4  * @param $$charset string 编码
 5  * @return 返回长度,1中文=1位,2英文=1位
 6  */
 7 function strLength($str,$charset='utf-8'){
 8     if($charset=='utf-8'$str = iconv('utf-8','gb2312',$str);
 9     $num = strlen($str);
10     $cnNum = 0;
11     for($i=0;$i<$num;$i++){
12         if(ord(substr($str,$i+1,1))>127){
13             $cnNum++;
14             $i++;
15        }
16     }
17     $enNum = $num-($cnNum*2);
18     $number = ($enNum/2)+$cnNum;
19     return ceil($number);
20 }
21 
22 //测试输出长度都为15
23 $str1 = '测试测试测试测试测试测试测试测';
24 $str2 = 'aaaaaaaaaaaaaaaaaaaaaaaaaaaaaa';
25 $str3 = 'aa测试aa测试aa测试aa测试aaaaaa';
26 echo strLength($str1,'gb2312');
27 echo strLength($str2,'gb2312');
28 echo strLength($str3,'gb2312');

 


鲜花

握手

雷人

路过

鸡蛋
该文章已有0人参与评论

请发表评论

全部评论

专题导读
上一篇:
Nginx+Php-fpm运行原理代理与反向代理发布时间:2022-07-10
下一篇:
CentOS7使用yum安装PHP5.6发布时间:2022-07-10
热门推荐
阅读排行榜

扫描微信二维码

查看手机版网站

随时了解更新最新资讯

139-2527-9053

在线客服(服务时间 9:00~18:00)

在线QQ客服
地址:深圳市南山区西丽大学城创智工业园
电邮:jeky_zhao#qq.com
移动电话:139-2527-9053

Powered by 互联科技 X3.4© 2001-2213 极客世界.|Sitemap