php全角字符转换为半角函数


Posted in PHP onFebruary 07, 2014

之前试过网上找的通过ASCII之类的字符替换,发现很多莫名其妙的问题。最后还是换成下面的字符替换方式了,把目前能找到的所有全角都列出来了一个个替换吧

/** 
* 全角字符转换为半角 
* 
* @param string $str 
* @return string 
*/ 
public function Sbc2Dbc($str) 
{ 
$arr = array( 
'0'=>'0', '1'=>'1', '2'=>'2', '3'=>'3', '4'=>'4','5'=>'5', '6'=>'6', '7'=>'7', '8'=>'8', '9'=>'9', 
'A'=>'A', 'B'=>'B', 'C'=>'C', 'D'=>'D', 'E'=>'E','F'=>'F', 'G'=>'G', 'H'=>'H', 'I'=>'I', 'J'=>'J', 
'K'=>'K', 'L'=>'L', 'M'=>'M', 'N'=>'N', 'O'=>'O','P'=>'P', 'Q'=>'Q', 'R'=>'R', 'S'=>'S', 'T'=>'T', 
'U'=>'U', 'V'=>'V', 'W'=>'W', 'X'=>'X', 'Y'=>'Y','Z'=>'Z', 'a'=>'a', 'b'=>'b', 'c'=>'c', 'd'=>'d', 
'e'=>'e', 'f'=>'f', 'g'=>'g', 'h'=>'h', 'i'=>'i','j'=>'j', 'k'=>'k', 'l'=>'l', 'm'=>'m', 'n'=>'n', 
'o'=>'o', 'p'=>'p', 'q'=>'q', 'r'=>'r', 's'=>'s', 't'=>'t', 'u'=>'u', 'v'=>'v', 'w'=>'w', 'x'=>'x', 
'y'=>'y', 'z'=>'z', 
'('=>'(', ')'=>')', '〔'=>'(', '〕'=>')', '【'=>'[','】'=>']', '〖'=>'[', '〗'=>']', '“'=>'"', '”'=>'"', 
'‘'=>'\'', '''=>'\'', '{'=>'{', '}'=>'}', '《'=>'<','》'=>'>','%'=>'%', '+'=>'+', '—'=>'-', '-'=>'-', 
'~'=>'~',':'=>':', '。'=>'.', '、'=>',', ','=>',', '、'=>',', ';'=>';', '?'=>'?', '!'=>'!', '…'=>'-', 
'‖'=>'|', '”'=>'"', '''=>'`', '‘'=>'`', '|'=>'|', '〃'=>'"',' '=>' ', '×'=>'*', ' ̄'=>'~', '.'=>'.', '*'=>'*', 
'&'=>'&','<'=>'<', '>'=>'>', '$'=>'$', '@'=>'@', '^'=>'^', '_'=>'_', '"'=>'"', '¥'=>'$', '='=>'=', 
'\'=>'\\', '/'=>'/' 
); 
return strtr($str, $arr); 
}
PHP 相关文章推荐
用Socket发送电子邮件(利用需要验证的SMTP服务器)
Oct 09 PHP
FCKeditor的安装(PHP)
Jan 13 PHP
php mssql 日期出现中文字符的解决方法
Mar 10 PHP
php生成随机密码的几种方法
Jan 17 PHP
PHP文件上传原理简单分析
May 29 PHP
PHP fgetcsv 定义和用法(附windows与linux下兼容问题)
May 29 PHP
ajax在joomla中的原生态应用代码
Jul 19 PHP
smarty 缓存控制前的页面静态化原理
Mar 15 PHP
PHP json_encode() 函数详解及中文乱码问题
Nov 05 PHP
PHP大神的十大优良习惯
Sep 14 PHP
php curl上传、下载、https登陆实现代码
Jul 23 PHP
PHP实现动态获取函数参数的方法示例
Apr 02 PHP
二进制交叉权限微型php类分享
Feb 07 #PHP
php stripslashes和addslashes的区别
Feb 03 #PHP
php获取网页标题和内容函数(不包含html标签)
Feb 03 #PHP
PHP下获取上个月、下个月、本月的日期(strtotime,date)
Feb 02 #PHP
采用header定义为文件然后readfile下载(隐藏下载地址)
Jan 31 #PHP
分享一个超好用的php header下载函数
Jan 31 #PHP
preg_match_all使用心得分享
Jan 31 #PHP
You might like
JS实现php的伪分页
2008/05/25 PHP
PHP ajax 异步执行不等待执行结果的处理方法
2015/05/27 PHP
php微信开发接入
2016/08/27 PHP
PHP实现RTX发送消息提醒的实例代码
2017/01/03 PHP
用apply让javascript函数仅执行一次的代码
2010/06/27 Javascript
标题过长使用javascript按字节截取字符串
2014/04/24 Javascript
JS实现的数组全排列输出算法
2015/03/19 Javascript
javascript获取重复次数最多的字符
2015/07/08 Javascript
jQuery网页右侧广告跟随滚动代码分享
2020/04/20 Javascript
AngularJs学习第五篇从Controller控制器谈谈$scope作用域
2016/06/08 Javascript
JavaScript面向对象分层思维全面解析
2016/11/22 Javascript
JS中移除非数字最多保留一位小数
2018/05/09 Javascript
JS中实现一个下载进度条及播放进度条的代码
2019/06/10 Javascript
react+redux仿微信聊天界面
2019/06/21 Javascript
微信小程序中限制激励式视频广告位显示次数(实现思路)
2019/12/06 Javascript
JavaScript实现PC端横向轮播图
2020/02/07 Javascript
vue 中this.$set 动态绑定数据的案例讲解
2021/01/29 Vue.js
Python3字符串学习教程
2015/08/20 Python
python开发之for循环操作实例详解
2015/11/12 Python
浅谈Python类里的__init__方法函数,Python类的构造函数
2016/12/10 Python
Python实现将SQLite中的数据直接输出为CVS的方法示例
2017/07/13 Python
Python输出由1,2,3,4组成的互不相同且无重复的三位数
2018/02/01 Python
PyCharm设置每行最大长度限制的方法
2019/01/16 Python
Python3实现配置文件差异对比脚本
2019/11/18 Python
基于pytorch的lstm参数使用详解
2020/01/14 Python
Django中的DateTimeField和DateField实现
2021/02/24 Python
保加利亚运动鞋购物网站:SneakerStudio.bg
2020/12/23 全球购物
.net C#面试题
2012/08/28 面试题
餐饮商业计划书范文
2014/04/29 职场文书
五一口号
2014/06/19 职场文书
党员民主评议总结
2014/10/20 职场文书
汽车转让协议书范本
2014/12/07 职场文书
办公用品管理制度
2015/08/04 职场文书
使用redis生成唯一编号及原理示例详解
2021/09/15 Redis
Apache POI的基本使用详解
2021/11/07 Servers
Python Pytorch查询图像的特征从集合或数据库中查找图像
2022/04/09 Python