博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
PHP截取中英文混合字符
阅读量:5238 次
发布时间:2019-06-14

本文共 899 字,大约阅读时间需要 2 分钟。

= $sLen ) { return $str; } //判断使用什么编码,默认为utf-8 if ( strtolower($charset) == "utf-8" ) { $len_step = 3; //如果是utf-8编码,则中文字符长度为3 }else{ $len_step = 2; //如果是gb2312或big5编码,则中文字符长度为2 } //执行截取操作 $len_i = 0; //初始化计数当前已截取的字符串个数,此值为字符串的个数值(非字节数) $substr_len = 0; //初始化应该要截取的总字节数 for( $i=0; $i < $sLen; $i++ ) { if ( $len_i >= $len ) break; //总截取$len个字符串后,停止循环 //判断,如果是中文字符串,则当前总字节数加上相应编码的中文字符长度 if( ord(substr($str,$i,1)) > 0xa0 ) { $i += $len_step - 1; $substr_len += $len_step; }else{ //否则,为英文字符,加1个字节 $substr_len ++; } $len_i ++; } $result_str = substr($str,0,$substr_len ); return $result_str;}////// 调用示例////$str = "空格 也算一个字符"; echo "截取后的字符串:".left($str,14); ?>     

 

转载于:https://www.cnblogs.com/whoamme/p/3190581.html

你可能感兴趣的文章
P3950 部落冲突 树链剖分
查看>>
读书_2019年
查看>>
读书汇总贴
查看>>
微信小程序 movable-view组件应用:可拖动悬浮框_返回首页
查看>>
MPT树详解
查看>>
空间分析开源库GEOS
查看>>
RQNOJ八月赛
查看>>
前端各种mate积累
查看>>
jQuery 1.7 发布了
查看>>
Python(软件目录结构规范)
查看>>
Windows多线程入门のCreateThread与_beginthreadex本质区别(转)
查看>>
Nginx配置文件(nginx.conf)配置详解1
查看>>
linux php编译安装
查看>>
name phone email正则表达式
查看>>
721. Accounts Merge
查看>>
「Unity」委托 将方法作为参数传递
查看>>
重置GNOME-TERMINAL
查看>>
redis哨兵集群、docker入门
查看>>
hihoCoder 1233 : Boxes(盒子)
查看>>
oracle中anyData数据类型的使用实例
查看>>