PHP使用strrev翻转中文乱码问题的解决方法


Posted in PHP onJanuary 13, 2017

本文实例讲述了PHP使用strrev翻转中文乱码问题的解决方法。分享给大家供大家参考,具体如下:

在用PHP中的strrve翻转中文时,会出现乱码情况

例如:

header("Content-Type: text/html; charset=utf-8");
echo strrev("处理使用strrev()函数时的乱码问题")."<br>";

运行结果为:

��???䄚?氕潇�)(verrts��?䆐?r�

解决方法就是自己重写一个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用使理处

希望本文所述对大家PHP程序设计有所帮助。

PHP 相关文章推荐
php 获取全局变量的代码
Apr 21 PHP
PHP Directory 函数的详解
Mar 07 PHP
精美漂亮的php分页类代码
Apr 02 PHP
PHP实现定时执行任务的方法
Oct 05 PHP
php上传文件并存储到mysql数据库的方法
Mar 16 PHP
简单谈谈php中的unicode和utf8编码
Jun 10 PHP
php的laravel框架快速集成微信登录的方法
Dec 12 PHP
PHP面向对象程序设计__tostring()和__invoke()用法分析
Jun 12 PHP
Laravel 数据库加密及数据库表前缀配置方法
Oct 10 PHP
Vagrant(WSL)+PHPStorm+Xdebu 断点调试环境搭建
Dec 13 PHP
php数组指针函数功能及用法示例
Feb 11 PHP
TP5框架实现一次选择多张图片并预览的方法示例
Apr 04 PHP
使用php完成常见的文件上传功能(推荐)
Jan 13 #PHP
Yii2实现增删改查后留在当前页的方法详解
Jan 13 #PHP
PHP文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤解析
Jan 12 #PHP
php中分页及SqlHelper类用法实例
Jan 12 #PHP
PHP生成图片验证码功能示例
Jan 12 #PHP
PHP中字符串长度的截取用法示例
Jan 12 #PHP
PHP实现二维数组去重功能示例
Jan 12 #PHP
You might like
php4的session功能评述(三)
2006/10/09 PHP
一个简单的MySQL数据浏览器
2006/10/09 PHP
php 在线打包_支持子目录
2008/06/28 PHP
php中调用其他系统http接口的方法说明
2014/02/28 PHP
php检测useragent版本示例
2014/03/24 PHP
PHP中in_array函数使用的问题与解决办法
2016/09/11 PHP
PHP 超级全局变量相关总结
2020/06/30 PHP
JS HTML5 音乐天气播放器(Ajax获取天气信息)
2013/05/26 Javascript
javascript中apply和call方法的作用及区别说明
2014/02/14 Javascript
JavaScript获取图片真实大小代码实例
2014/09/24 Javascript
js的[defer]和[async]属性
2014/11/24 Javascript
jQuery选择器源码解读(八):addCombinator函数
2015/03/31 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记6)
2015/12/20 Javascript
微信小程序实现图片懒加载的示例代码
2017/12/13 Javascript
Vue 按键修饰符处理事件的方法
2018/05/04 Javascript
Bootstrap标签页(Tab)插件切换echarts不显示问题的解决
2018/07/13 Javascript
node全局变量__dirname与__filename的区别
2019/01/14 Javascript
axios如何利用promise无痛刷新token的实现方法
2019/08/27 Javascript
vue基本使用--refs获取组件或元素的实例
2019/11/07 Javascript
JS使用正则表达式实现常用的表单验证功能分析
2020/04/30 Javascript
[01:09:16]DOTA2-DPC中国联赛 正赛 SAG vs Dynasty BO3 第一场 1月25日
2021/03/11 DOTA
利用python修改json文件的value方法
2018/12/31 Python
django中使用事务及接入支付宝支付功能
2019/09/15 Python
Python enumerate() 函数如何实现索引功能
2020/06/29 Python
HTML5拖拽文件到浏览器并实现文件上传下载功能代码
2013/06/06 HTML / CSS
canvas简易绘图的实现(海绵宝宝篇)
2018/07/04 HTML / CSS
一道SQL存储过程面试题
2016/10/07 面试题
消防安全管理制度
2014/02/01 职场文书
企业贷款委托书格式
2014/09/12 职场文书
2014坚持党风廉政建设思想汇报
2014/09/18 职场文书
2015年公司中秋节致辞
2015/07/31 职场文书
《走遍天下书为侣》教学反思
2016/02/22 职场文书
Python基础之元组与文件知识总结
2021/05/19 Python
python如何利用cv2模块读取显示保存图片
2021/06/04 Python
深入详解JS函数的柯里化
2021/06/09 Javascript
Python Matplotlib绘制条形图的全过程
2021/10/24 Python