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写的采集程序
Mar 16 PHP
简化php模板页面中分页代码的解析
Feb 06 PHP
PHP 强制下载文件代码
Oct 24 PHP
基于Zend的Captcha机制的应用
May 02 PHP
解析php 版获取重定向后的地址(代码)
Jun 26 PHP
php分页示例分享
Apr 30 PHP
Smarty模板学习笔记之Smarty简介
May 20 PHP
PHP常用技巧汇总
Mar 04 PHP
Zend Framework教程之前端控制器Zend_Controller_Front用法详解
Mar 07 PHP
PHP基于递归算法解决兔子生兔子问题
May 11 PHP
PHP基于pdo的数据库操作类【可支持mysql、sqlserver及oracle】
May 21 PHP
关于Yii中模型场景的一些简单介绍
Sep 22 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
PHP文件去掉PHP注释空格的函数分析(PHP代码压缩)
2013/07/02 PHP
destoon文章模块调用企业会员资料的方法
2014/08/22 PHP
php-fpm.conf配置文件中文说明详解及重要参数说明
2018/10/10 PHP
php回调函数处理数组操作示例
2020/04/13 PHP
json 实例详细说明教程
2009/10/31 Javascript
Javascript实现的鼠标经过时播放声音
2010/05/18 Javascript
jquery.cvtooltip.js 基于jquery的气泡提示插件
2010/11/19 Javascript
jQuery 选择器(61种)整理总结
2016/09/26 Javascript
vue的props实现子组件随父组件一起变化
2016/10/27 Javascript
PHP7新特性简述
2017/06/11 Javascript
微信小程序-滚动消息通知的实例代码
2017/08/03 Javascript
vue语法之拼接字符串的示例代码
2017/10/25 Javascript
利用SpringMVC过滤器解决vue跨域请求的问题
2018/02/10 Javascript
使用vue2实现购物车和地址选配功能
2018/03/29 Javascript
vue mint-ui tabbar变组件使用
2018/05/04 Javascript
vue主动刷新页面及列表数据删除后的刷新实例
2018/09/16 Javascript
使用ThinkJs搭建微信中控服务的实现方法
2019/08/08 Javascript
[01:34]传奇从这开始 2016国际邀请赛中国区预选赛震撼开启
2016/06/26 DOTA
35个Python编程小技巧
2014/04/01 Python
pycharm配置pyqt5-tools开发环境的方法步骤
2019/02/11 Python
pandas的排序和排名的具体使用
2019/07/31 Python
python实现opencv+scoket网络实时图传
2020/03/20 Python
Django ORM判断查询结果是否为空,判断django中的orm为空实例
2020/07/09 Python
Python 读取位于包中的数据文件
2020/08/07 Python
python中threading和queue库实现多线程编程
2021/02/06 Python
html5 css3 动态气泡按钮实例演示
2012/12/02 HTML / CSS
size?德国官方网站:英国伦敦的球鞋精品店
2018/03/17 全球购物
仓库保管员岗位职责
2013/12/20 职场文书
董事长秘书工作职责
2014/06/10 职场文书
单位个人查摆问题及整改措施
2014/10/28 职场文书
2014年学校后勤工作总结
2014/12/06 职场文书
幼儿园中秋节活动总结
2015/03/23 职场文书
教师教育教学随笔
2015/08/15 职场文书
2016年百日安全生产活动总结
2016/04/06 职场文书
MySQL注入基础练习
2021/05/30 MySQL
CSS3中Animation实现简单的手指点击动画的示例
2021/07/15 HTML / CSS