小编给大家分享一下PHP怎么实现翻转,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!php实现翻转的方法:1、使用strrev()函数实现英文字符串翻转;2、通过自
小编给大家分享一下PHP怎么实现翻转,相信大部分人都还不怎么了解,因此分享这篇文章给大家参考一下,希望大家阅读完这篇文章后大有收获,下面让我们一起去了解一下吧!
php实现翻转的方法:1、使用strrev()函数实现英文字符串翻转;2、通过自定义的selfStrrev方法实现中文字符串翻转。
本文操作环境:windows7系统、PHP7.1版、Dell G3电脑。
PHP自定义函数实现翻转中文的功能
对于PHP语言来说,说到字符串翻转大家首先想到应该就是strrev()这个函数了,
strrev定义和用法
strrev() 函数反转字符串。
语法
strrev(string)
参数
string 必需。规定要反转的字符串。
例如:
<?phpecho strrev("Hello World!");?>
输出结果为:!dlroW olleH
strrev()这个函数对英文很好用,直接可以实现字符串翻转,但是如果是中文的话那么就都是乱码了
例如:
<?phpecho 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编程频道!
--结束END--
本文标题: php怎么实现翻转
本文链接: https://lsjlt.com/news/303120.html(转载时请注明来源链接)
有问题或投稿请发送至: 邮箱/279061341@qq.com QQ/279061341
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
2024-02-29
回答
回答
回答
回答
回答
回答
回答
回答
回答
回答
0