PHP中strrev翻转中文乱码问题的解决办法
2016-03-22 12:33
716 查看
在用PHP中的strrve翻转中文时,会出现乱码情况
例如:
运行结果为:
��鮗遠籹䄚綗氕潇�)(verrts��翽䆐焤�
解决方法就是自己重写一个cnstrrev的函数
运行结果为:
处理使用strrev()函数时的乱码问题+题问码乱的时数函)(verrts用使理处
例如:
header("Content-Type: text/html; charset=utf-8"); echo strrev("处理使用strrev()函数时的乱码问题")."<br>";
运行结果为:
��鮗遠籹䄚綗氕潇�)(verrts��翽䆐焤�
解决方法就是自己重写一个cnstrrev的函数
header("Content-Type: text/html; charset=utf-8"); $str = '处理使用strrev()函数时的乱码问题'; function cnstrrev($str) { $len = strlen($str); for($i = 0; $i < $len; $i++) { $char = $str{0}; if(ord($char) > 127) //ord()函数取得第一个字符的ASCII码,如果大于0xa0(127)的话则是中文字符 { $i+=2;//utf-8编码的情况下,一个中文字符占三个字节 if($i < $len) { $arr[] = substr($str, 0, 3);//utf-8编码的情况下,一个中文字符占三个字节 $str = substr($str, 3); } } else { $arr[] = $char; $str = substr($str, 1);//否则为非中文,占一个字符 } } return join(array_reverse($arr));//以相反的元素顺序返回数组: } echo $str.'+'.cnstrrev($str);
运行结果为:
处理使用strrev()函数时的乱码问题+题问码乱的时数函)(verrts用使理处
相关文章推荐
- Laravel进行数据库迁移(migration)
- ThinkPHP3.2无法加载控制器
- matplotlib使用
- php设计模式学习系列(五)--单例模式
- 如何使用工具进行线上 PHP 性能追踪及分析?
- Zend Framework教程之Zend_Registry对象用法分析
- 如何使用工具进行线上 PHP 性能追踪及分析?
- pure-ftpd搭建教程
- YII2 basic版文件夹描述及应用启动流程
- 【设计模式】之装饰器模式(二)-PHP
- setprecision
- PHP设计模式 观察者模式(Observer)
- PHP实现正态分布的累积概率函数
- Zend Framework实现多服务器共享SESSION数据的方法
- php 面向对象 初始化类
- windows上给yii2安装插件
- Zend Framework框架Smarty扩展实现方法
- Windows Server 2012 ftp的搭建
- Zend Framework框架路由机制代码分析
- 单例模式(PHP)