php strrev() 函数能实现字符串反转,但是不支持中文,利用mb_系列函数可以进行中文字符串反转。
代码如下:
/**
* 中文字符串反转
* @param $str
* @param string $charset
* @return string
*/
function reverse($str, $charset = 'UTF-8')
{
$ret = '';
$len = mb_strlen($str, $charset);
for ($i = 0; $i < $len; $i++) {
$ret[] = mb_substr($str, $i, 1, $charset);
}
return implode('', array_reverse($ret));
}
php 支持汉字的反转字符串函数
php 自带函数 strrev,该函数可以将字符串反转。
例如:
$str = 'abcdef';
echo strrev($str);
输出:
fedcba
该函数并不支持中文,如果字符串含有中文,那么汉字将会乱码。
例子,支持反转包括汉字的字符串反转函数:
function mb_strrev($str) {
$len = mb_strlen($str, 'UTF-8');
$arr = array();
for ($i = 0; $i < $len; $i++) {
$arr[] = mb_substr($str, $i, 1, 'UTF-8');
}
return implode('', array_reverse($arr));
}
调用:
$str = '记者获some-letters-here悉嫦娥二号发射工作准备全部就绪';
echo mb_strrev($str);