您现在的位置是:群英 > 开发技术 > PHP语言
PHP怎样对中文字符无乱码翻转?教你两个方法
Admin发表于 2022-01-14 18:36:25968 次浏览

    PHP怎样对中文字符无乱码翻转?对于字符翻转很多朋友都觉得比较简单,使用strrev()函数不久可以了吧,直接使用使用strrev()函数对字符串翻转,英文字符是没有问题的,但是中文字符可能会有中文乱码的问题,那么究竟怎样翻转中文字符才无乱码呢?

    本文操作环境:Windows7系统、PHP7.1版、Dell G3电脑。

    php如何实现翻转?PHP自定义函数实现翻转中文的功能

    对于PHP语言来说,说到字符串翻转大家首先想到应该就是strrev()这个函数了,

    strrev定义和用法

    strrev() 函数反转字符串。

    语法

strrev(string)

    参数

    string 必需。规定要反转的字符串。

    例如:

<?php
echo strrev("Hello World!");
?>

    输出结果为:!dlroW olleH

    strrev()这个函数对英文很好用,直接可以实现字符串翻转,但是如果是中文的话那么就都是乱码了

    例如:

<?php
echo strrev("您好世界!");
?>

    输出结果为:��疸佥娂� 这个结果是不是没有人能看得懂啊。那么下面于老师就给大家分享一下如何反转中文的代码;

    第一种方法:

function selfStrrev($str){
//判断输入的是不是utf8类型的字符,否则退出
  if(!is_string($str)||!mb_check_encoding($str,'UTF-8')){
    exit("输入类型不是UTF8类型的字符串");
  }
  $array=array();
  //将字符串存入数组
  $l=mb_strlen($str,'UTF-8');//在mb_strlen计算时,选定内码为UTF8,则会将一个中文字符当作长度1来计算
  for($i=0;$i<$l;$i++){
    $array[]=mb_substr($str,$i,1,'UTF-8');
  }
  //反转字符串
  krsort($array);
  //拼接字符串
  $string=implode($array);
  return $string;
}
$str = "于老师特别帅";
echo selfStrrev($str);

    输出结果为:帅别特师老于;

    第二种方法:

function selfStrrev($str){
//判断输入的是不是utf8类型的字符,否则退出
  if(!is_string($str)||!mb_check_encoding($str,'UTF-8')){
    exit("输入类型不是UTF8类型的字符串");
  }
  //定义一个新的字符串 用来存储反转后的字符串
  $revStr = "";
  $l=mb_strlen($str,'UTF-8');//在mb_strlen计算时,选定内码为UTF8,则会将一个中文字符当作长度1来计算
  for($i=$l;$i>0;$i--){
    $revStr .= mb_substr($str,$i-1,1,'UTF-8'); //从最后一位开始截取,一直截取到第一位 然后拼接到定义好的新的字符串里面
  }
  return $revStr;
}
$str = "于老师特别帅";
echo selfStrrev($str);

    输出结果为:帅别特师老于;

    这里用到的技术就是mb_XXX 系列函数,需要注意的mb_XXX 系列函数是并不是PHP核心函数,使用前需要确保在php.ini中加载了php_mbstring.dll,即确保“extension=php_mbstring.dll”这一行存在并且没有被注释掉,否则会出现未定义函 数的问题;

    关于PHP怎样对中文字符无乱码翻转的方法就分享到这,上述两个方法具有一定的参考价值,感兴趣的朋友可以了解看看。想要了解更多PHP的字符操作作,大家可以关注其它的相关文章。

文本转载自PHP中文网

免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。

相关信息推荐
2022-02-11 17:50:21 
摘要:这篇文章给大家分享的是Python中代码换行的方法。在Python中,对于过长的代码我们就需要考虑换行,其中常用的方法有下面几种,文中的示例代码介绍得很详细,有需要的朋友可以参考,接下来就跟随小编一起了解看看吧。
2022-07-26 17:47:34 
摘要:本篇文章给大家带来了关于PHP的相关知识,其中主要介绍了关于session反序列化漏洞的相关问题,就是序列化存储Session数据与反序列化读取Session数据的方式不同导致Session反序列化漏洞,希望对大家有帮助。
2022-08-27 17:49:44 
摘要:本篇文章给大家带来了关于JavaScript的相关知识,其中主要介绍了JavaScript中的一些常用事件,包括鼠标事件、键盘事件、页面事件、焦点事件等等,希望对大家有帮助。
云活动
推荐内容
热门关键词
热门信息
群英网络助力开启安全的云计算之旅
立即注册,领取新人大礼包
  • 联系我们
  • 24小时售后:4006784567
  • 24小时TEL :0668-2555666
  • 售前咨询TEL:400-678-4567

  • 官方微信

    官方微信
Copyright  ©  QY  Network  Company  Ltd. All  Rights  Reserved. 2003-2019  群英网络  版权所有   茂名市群英网络有限公司
增值电信经营许可证 : B1.B2-20140078   粤ICP备09006778号
免费拨打  400-678-4567
免费拨打  400-678-4567 免费拨打 400-678-4567 或 0668-2555555
微信公众号
返回顶部
返回顶部 返回顶部