php字符串反转

1.单字节字符串反转

php提供了用于字符串反转的函数strrev()

$str = 'abcdef';
echo strrev($str);

2.对于包含中文的多字节字符串需要用到mb_substr()

$str = '字符串反转';

function rev($str, $encoding = 'utf-8'){
    $len = mb_strlen($str, $encoding);
    $result = '';

    for ($i = $len-1; $i>=0; $i--){
        $result.= mb_substr($str,$i,1,$encoding);
    }

    return $result;
}

echo rev($str);

3.算法实现 首位交换

$str = 'abcdefg';
$len = strlen($str);
$times = $len/2;

for($i = 0;$i <= $times; $i++ ){
    $tmp = $str[$i];
    $str[$i] = $str[$len-$i-1];
    $str[$len-$i-1] = $tmp;
}

echo $str;