这种问题在面试题中经常被问到,php有自带的函数strrev可以轻松实现,但是面试官要考的肯定不是这个啦。除此办法外,我能想到的还有两个,第一个就是把分割字符串到一个数组中,然后遍历拼接,具体如下:
function revstr($str)
{
if (strlen($str) <= 1) return $str;
$newstr = '';
$str2arr = str_split($str,1);
foreach ($str2arr as $word) {
$newstr = $word.$newstr;
}
return $newstr;
}
function revstr($str)
{
if (strlen($str) <= 1) return $str;
$newstr = '';
$newstr .= substr($str,-1).revstr(substr($str,0,strlen($str)-1));
return $newstr;
}
ps:这种方法应该才是面试官想看到的答案。