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


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 相关文章推荐
用缓存实现静态页面的测试
Dec 06 PHP
用phpmyadmin更改mysql5.0登录密码
Mar 25 PHP
php中可能用来加密字符串的函数[base64_encode、urlencode、sha1]
Jan 16 PHP
PHP垃圾回收机制引用计数器概念分析
Jun 24 PHP
PHP高级编程实例:编写守护进程
Sep 02 PHP
PHP Curl模拟登录微信公众平台、新浪微博实例代码
Jan 28 PHP
完美解决phpdoc导出文档中@package的warning及Error的错误
May 17 PHP
php实现替换手机号中间数字为*号及隐藏IP最后几位的方法
Nov 16 PHP
PHP文件系统管理(实例讲解)
Sep 19 PHP
php实现JWT(json web token)鉴权实例详解
Nov 05 PHP
详解PHP中的8个魔术常量
Jul 06 PHP
php中array_fill函数的实例用法
Mar 02 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在XP下IIS和Apache2服务器上的安装
2006/09/05 PHP
针对初学PHP者的疑难问答(1)
2006/10/09 PHP
php多层数组与对象的转换实例代码
2013/08/05 PHP
php处理多图上传压缩代码功能
2018/06/13 PHP
javascript编程起步(第四课)
2007/02/27 Javascript
浅析用prototype定义自己的方法
2013/11/14 Javascript
jquery表单验证插件(jquery.validate.js)的3种使用方式
2015/03/28 Javascript
JavaScript数组方法总结分析
2016/05/06 Javascript
jQuery 常用代码集锦(必看篇)
2016/05/16 Javascript
js鼠标单击和双击事件冲突问题的快速解决方法
2016/07/11 Javascript
手机端点击图片放大特效PhotoSwipe.js插件实现
2016/08/24 Javascript
jQuery Ajax 实现在html页面实时显示用户登录状态
2016/12/30 Javascript
JavaScript中String对象的方法介绍
2017/01/04 Javascript
详解如何构建Angular项目目录结构
2017/07/13 Javascript
JavaScript中如何判断一个值的类型
2017/09/15 Javascript
JavaScript伪数组用法实例分析
2017/12/22 Javascript
JavaScript中的一些隐式转换和总结(推荐)
2017/12/22 Javascript
vue服务端渲染页面缓存和组件缓存的实例详解
2018/09/18 Javascript
Vue 幸运大转盘实现思路详解
2019/05/06 Javascript
layer实现弹出层自动调节位置
2019/09/05 Javascript
Vue切换Tab动态渲染组件的操作
2020/09/21 Javascript
Openlayers实现地图的基本操作
2020/09/28 Javascript
JavaScript基于SVG的图片切换效果实例代码
2020/12/15 Javascript
详解Python装饰器由浅入深
2016/12/09 Python
python基础教程之匿名函数lambda
2017/01/17 Python
Python使用PDFMiner解析PDF代码实例
2017/03/27 Python
python 对dataframe下面的值进行大规模赋值方法
2018/06/09 Python
python多进程下的生产者和消费者模型
2020/05/07 Python
python 如何使用find和find_all爬虫、找文本的实现
2020/10/16 Python
如何在网站上添加谷歌定位信息
2016/04/16 HTML / CSS
HTML5的语法变化介绍
2013/08/13 HTML / CSS
AE美国鹰美国官方网站:American Eagle Outfitters
2016/08/22 全球购物
Carter’s官方旗舰店:美国受欢迎的婴童服装品牌
2018/01/21 全球购物
高校十八大报告感想
2014/01/27 职场文书
合作协议书
2014/04/23 职场文书
使用Golang的channel交叉打印两个数组的操作
2021/04/29 Golang