[面试官] 问:不使用strrev()函数,如何实现字符串反转
不过没办法。面试就是各种卷,来看看吧!
实现字符串反转主要用到的函数是:strrev() 函数
定义和用法
strrev() 函数反转字符串。
语法
strrev(string)
参数 描述
string 必需。规定要反转的字符串。
实例:
<?php
echo strrev("abcdefg");
?>
输出:
gfedcba
扩展,出现的面试题
不用php的函数我们还可以使用for循环去自定义方法来实现这一功能
$str = 'abcdefg';
function str_re($str)
{
for($i=0;true;$i++)
{
if(!isset($str[$i]))
{
break;
}
}
$return = '';
for($j=$i-1;$j>=0;$j--)
{
$return .= $str[$j];
}
return $return;
}
echo str_re($str).'<br>';
echo strrev($str);
将 “1234567890” 转换成 “0987654321” 不要使用函数
<?php
$s = '1234567890';
$o = '';
$i = 0;
while(isset($s[$i]) && $s[$i] != null) {
$o = $s[$i++].$o;
}
echo $o;
// abcdefg -> gfedcba
// 将字符串看做数组来处理 [a,b,c,d,e,f,g]
function str_rev($str)
{
for ($i = 0; true; $i++) {
// 判断字符串长度
if (!isset($str[$i])) {
break;
}
}
$return = '';
for ($j = $i-1; $j >= 0; $j--) {
$return .= $str[$j];
}
return $return;
}
echo str_rev('abcdefg'); // 调用函数