如何分别全角和半角以避免乱码


Posted in PHP onOctober 09, 2006

function ChgTitle($title)
{

$length = 46;
if (strlen($title)>$length) {
$temp = 0;
for($i=0; $i<$length; $i++)
if (ord($title[$i]) > 128)
$temp++;
if ($temp%2 == 0)
$title = substr($title,0,$length)."...";
else
$title = substr($title,0,$length+1)."...";
}
return $title;
}

原理就是截断一个字符,看看其ascII码是不是大于128,如果是,说明截断的是一个全角汉字,那么就退后一个截断。用$length控制长度

备注:循环判断字符串里面的 >128 的字符个数,如果半角字符为偶数,则表示位置刚好为整个汉字,如果为奇数,则为半个汉字,需要取下一个字符 

PHP 相关文章推荐
PHP简单系统查询模块代码打包下载
Jun 07 PHP
DedeCMS dede_channeltype表字段注释
Apr 07 PHP
浅析51个PHP处理字符串的函数
Aug 02 PHP
linux系统下php安装mbstring扩展的二种方法
Jan 20 PHP
php格式化时间戳显示友好的时间实现思路及代码
Oct 23 PHP
ThinkPHP独立分组使用的注意事项
Nov 25 PHP
PHP使用pcntl_fork实现多进程下载图片的方法
Dec 16 PHP
PHP中使用php5-ffmpeg撷取视频图片实例
Jan 07 PHP
php析构函数的简单使用说明
Aug 24 PHP
php 利用socket发送HTTP请求(GET,POST)
Aug 24 PHP
php array_keys 返回数组的键名
Oct 25 PHP
Laravel 5.4.36中session没有保存成功问题的解决
Feb 19 PHP
玩转虚拟域名◎+ .
Oct 09 #PHP
桌面中心(四)数据显示
Oct 09 #PHP
桌面中心(一)创建数据库
Oct 09 #PHP
桌面中心(二)数据库写入
Oct 09 #PHP
桌面中心(三)修改数据库
Oct 09 #PHP
如何对PHP程序中的常见漏洞进行攻击(上)
Oct 09 #PHP
PHP4在WinXP下IIS和Apache2服务器上的安装实例
Oct 09 #PHP
You might like
转PHP手册及PHP编程标准
2006/12/17 PHP
解析如何在PHP下载文件名中解决乱码的问题
2013/06/20 PHP
php 浮点数比较方法详解
2017/05/05 PHP
PHP实现链式操作的三种方法详解
2017/11/16 PHP
PHP中散列密码的安全性分析
2019/07/26 PHP
PHP的垃圾回收机制代码实例讲解
2021/02/27 PHP
利用ASP发送和接收XML数据的处理方法与代码
2007/11/13 Javascript
一些javascript一些题目的解析
2010/12/25 Javascript
输入框的字数时时统计—关于 onpropertychange 和 oninput 使用
2011/10/21 Javascript
基于javascript 闭包基础分享
2013/07/10 Javascript
jQuery读取XML文件内容的方法
2015/03/09 Javascript
JS中递归函数
2016/06/17 Javascript
js显示动态时间的方法详解
2016/08/20 Javascript
jQuery选择器实例应用
2017/01/05 Javascript
JS表单验证方法实例小结【电话、身份证号、Email、中文、特殊字符、身份证号等】
2017/02/14 Javascript
vuex操作state对象的实例代码
2018/04/25 Javascript
使用vue.js在页面内组件监听scroll事件的方法
2018/09/11 Javascript
Android 自定义view仿微信相机单击拍照长按录视频按钮
2019/07/19 Javascript
layui 数据表格 根据值(1=业务,2=机构)显示中文名称示例
2019/10/26 Javascript
Swift 3.0在集合类数据结构上的一些新变化总结
2016/07/11 Python
浅谈Python类的__getitem__和__setitem__特殊方法
2016/12/25 Python
解决Tensorflow安装成功,但在导入时报错的问题
2018/06/13 Python
Pandas GroupBy对象 索引与迭代方法
2018/11/16 Python
Django给admin添加Action的步骤详解
2019/05/01 Python
Python split() 函数拆分字符串将字符串转化为列的方法
2019/07/16 Python
Python实现捕获异常发生的文件和具体行数
2020/04/25 Python
python如何进入交互模式
2020/07/06 Python
基于python调用jenkins-cli实现快速发布
2020/08/14 Python
python3跳出一个循环的实例操作
2020/08/18 Python
解决Python3.8运行tornado项目报NotImplementedError错误
2020/09/02 Python
德国BA保镖药房韩文网:kr.ba.de
2017/09/04 全球购物
护士自我鉴定总结
2014/03/24 职场文书
班级年度安全计划书
2014/05/01 职场文书
学生抄作业检讨书(2篇)
2014/10/17 职场文书
老乡会致辞
2015/07/28 职场文书
Go语言 详解net的tcp服务
2022/04/14 Golang