一聚教程网:一个值得你收藏的教程网站

热门教程

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

时间:2022-06-24 15:07:18 编辑:袖梨 来源:一聚教程网

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

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

例如:

 代码如下复制代码

header("Content-Type: text/html; charset=utf-8");

echostrrev("处理使用strrev()函数时的乱码问题")."
";

运行结果为:

 代码如下复制代码
��???䄚?氕潇�)(verrts��?䆐?r�

解决方法就是自己重写一个cnstrrev的函数

 代码如下复制代码

header("Content-Type: text/html; charset=utf-8");

$str='处理使用strrev()函数时的乱码问题'

functioncnstrrev($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);//否则为非中文,占一个字符

    }

  }

  returnjoin(array_reverse($arr));//以相反的元素顺序返回数组:

}

echo$str.'+'.cnstrrev($str);

运行结果为:

 代码如下复制代码
处理使用strrev()函数时的乱码问题+题问码乱的时数函)(verrts用使理处

热门栏目