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 相关文章推荐
php环境配置 php5 mysql5 apache2 phpmyadmin安装与配置
Nov 17 PHP
php面向对象全攻略 (九)访问类型
Sep 30 PHP
支持数组的ADDSLASHES的php函数
Feb 16 PHP
PHP常用开发函数解析之数组篇[未完结]
Jul 30 PHP
PHP字符串长度计算 - strlen()函数使用介绍
Oct 15 PHP
PHP中使用php://input处理相同name值的表单数据
Feb 03 PHP
PHP+MySQL实现无极限分类栏目的方法
Dec 23 PHP
php mysql PDO 查询操作的实例详解
Sep 23 PHP
PHP的PDO连接讲解
Jan 24 PHP
PHP基于GD2函数库实现验证码功能示例
Jan 27 PHP
php中钩子(hook)的原理与简单应用demo示例
Sep 03 PHP
php字符串倒叙
Apr 01 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
日本十大最佳动漫,全都是二次元的神级作品
2019/10/05 日漫
在PHP3中实现SESSION的功能(二)
2006/10/09 PHP
《PHP边学边教》(01.开篇――准备工作)
2006/12/13 PHP
php cookie 登录验证示例代码
2009/03/16 PHP
php获取四位字母和数字的随机数的实现方法
2015/01/09 PHP
php中preg_match的isU代表什么意思
2015/10/01 PHP
php简单统计中文个数的方法
2016/09/30 PHP
PHP给源代码加密的几种方法汇总(推荐)
2018/02/06 PHP
laravel 框架配置404等异常页面
2019/01/07 PHP
PHP判断当前使用的是什么浏览器(推荐)
2019/10/27 PHP
document对象execCommand的command参数介绍
2006/08/01 Javascript
js AspxButton的客户端操作
2009/06/26 Javascript
jquery div 居中技巧应用介绍
2012/11/24 Javascript
通过length属性判断jquery对象是否存在
2013/10/18 Javascript
嵌入式iframe子页面与父页面js通信的方法
2015/01/20 Javascript
Angularjs中使用指令绑定点击事件的方法
2017/03/30 Javascript
Node.js 使用流实现读写同步边读边写功能
2017/09/11 Javascript
vue axios登录请求拦截器
2018/04/02 Javascript
Vue中如何实现proxy代理
2018/04/20 Javascript
详解小程序设置缓存并且不覆盖原有数据
2019/04/15 Javascript
微信sdk实现禁止微信分享(使用原生php实现)
2019/11/15 Javascript
[02:42]DOTA2英雄基础教程 杰奇洛
2013/12/23 DOTA
[01:00:35]2018DOTA2亚洲邀请赛3月30日B组 EffcetVSMineski
2018/03/31 DOTA
Windows10下 python3.7 安装 facenet的教程
2019/09/10 Python
python是怎么被发明的
2020/06/15 Python
python中delattr删除对象方法的代码分析
2020/12/15 Python
夏尔巴人登珠峰品牌:Sherpa Adventure Gear
2018/02/08 全球购物
美国家居用品和厨具购物网站:DealsDot
2019/10/07 全球购物
上海奥佳笔试题面试题
2016/11/16 面试题
银行求职信怎么写
2014/05/26 职场文书
校运动会广播稿(100篇)
2014/09/12 职场文书
法制教育观后感
2015/06/17 职场文书
教师节随笔
2015/08/15 职场文书
2019年“红色之旅”心得体会1000字(3篇)
2019/09/27 职场文书
关于感恩的素材句子(38句)
2019/11/11 职场文书
详解Python魔法方法之描述符类
2021/05/26 Python