您的位置:首页 > 编程语言 > PHP开发

PHP不使用任何内置函数实现字符串翻转

2018-01-05 11:41 495 查看
实现字符串翻转PHP本身自带一个函数就可以解决,strrev函数。这里不适用任何内置函数实现字符串翻转

案例一(纯字母):

$str = 'abcdefghig k';   //假设测试的字符串/g与k之间有一个空格
//php中的字符串可以看做数组来处理,比如代码输出  echo $str[4]; ,结果为 e,也就是abcdefghigk的第四个字母

function str_rev ($str)
{
for ($i = 0; true; $i++) //true模拟死循环
{
if (!isset($str[$i])){   //如果没有数据,也就是超出字符串长度,那么跳出死循环
break;
}
}
//那么字符串长度就是$i - 1
$last_str = '';
for ($j = $i - 1; $j >=0 ; $j -- )
{
$last_str .= $str[$j];
}
return $last_str;
}

echo str_rev($str);


k gihgfedcba  //输出结果


案例二(有中文,且包含内置函数):

$str = 'abcd卡忙北鼻abc d';
function str_rev($str,$encoding='utf-8'){
$result = '';
$len = mb_strlen($str);
for($i=$len-1; $i>=0; $i--){
$result .= mb_substr($str,$i,1,$encoding);
}
return $result;
}
echo str_rev($str);


d cba鼻北忙卡dcba  //输出结果
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: