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 相关文章推荐
dedecms中常见问题修改方法总结
Mar 21 PHP
PHP去除数组中重复的元素并按键名排序函数
Aug 18 PHP
PHP中函数内引用全局变量的方法
Oct 20 PHP
php中在PDO中使用事务(Transaction)
May 14 PHP
php加密解密实用类分享
Jan 07 PHP
非常实用的PHP常用函数汇总
Dec 17 PHP
php上传大文件失败的原因及应对策略
Oct 20 PHP
php通过两层过滤获取留言内容的方法
Jul 11 PHP
php 截取utf-8格式的字符串实例代码
Oct 30 PHP
PHP封装的XML简单操作类完整实例
Nov 13 PHP
PHP基于redis计数器类定义与用法示例
Feb 08 PHP
PHP堆栈调试操作简单示例
Jun 15 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
PHP中实现进程间通讯
2006/10/09 PHP
ThinkPHP关于session的操作方法汇总
2014/07/18 PHP
Yii2 rbac权限控制之rule教程详解
2016/06/23 PHP
PHP命令空间namespace及use的用法小结
2017/11/27 PHP
thinkPHP框架整合tcpdf插件操作示例
2018/08/07 PHP
filemanage功能中用到的lib.js
2007/04/08 Javascript
JS弹出窗口代码大全(详细整理)
2012/12/21 Javascript
JavaScript仿静态分页实现方法
2015/08/04 Javascript
AngularJS中的缓存使用
2017/01/11 Javascript
JQuery实现图片轮播效果
2017/05/08 jQuery
Vue中之nextTick函数源码分析详解
2017/10/17 Javascript
JS实现多物体运动的方法详解
2018/01/23 Javascript
Vue 之孙组件向爷组件通信的实现
2019/04/23 Javascript
JavaScript 预解析的4种实现方法解析
2019/09/03 Javascript
javascript写一个ajax自动拦截并下载数据代码实例
2019/09/07 Javascript
[48:24]完美世界DOTA2联赛循环赛LBZS vs Forest 第一场 10月30日
2020/10/31 DOTA
python time模块用法实例详解
2014/09/11 Python
Python随机生成数模块random使用实例
2015/04/13 Python
Python设计模式之抽象工厂模式
2016/08/25 Python
python 3利用BeautifulSoup抓取div标签的方法示例
2017/05/28 Python
python3实现用turtle模块画一棵随机樱花树
2019/11/21 Python
flask框架json数据的拿取和返回操作示例
2019/11/28 Python
Python+numpy实现矩阵的行列扩展方式
2019/11/29 Python
通过Python扫描代码关键字并进行预警的实现方法
2020/05/24 Python
基于Python爬取51cto博客页面信息过程解析
2020/08/25 Python
css3 利用transform打造走动的2D时钟
2020/10/20 HTML / CSS
欧洲著名的二手奢侈品网站:Vestiaire Collective
2020/03/07 全球购物
一套C++笔试题面试题
2012/06/06 面试题
市场营销职业生涯规划书范文
2014/01/12 职场文书
信息专业大学生自我评价分享
2014/01/17 职场文书
授权委托书怎么写
2014/04/03 职场文书
自主招生学校推荐信
2014/09/26 职场文书
医院见习报告范文
2014/11/03 职场文书
房地产置业顾问工作总结
2015/10/23 职场文书
Ruby GDBM操作简介及数据存储原理
2022/04/19 Ruby
PHP RabbitMQ消息列队
2022/05/11 PHP