我正在尝试在不使用strrev()
的情况下反转字符串。我认为这将是一项简单的任务:
$str = 'I am a string';
$rev = '';
for($i = 0, $len = strlen($str), $j = $len -1; $i < $len; $i++, $j--) {
$rev += $str[$j];
}
echo $rev;
结果是0
。为什么会这样?
当我这样做时:
$str = 'I am a string';
$rev = '';
for($i = 0, $len = strlen($str), $j = $len -1; $i < $len; $i++, $j--) {
echo $str[$j];
}
我得到:gnirts a ma I
为什么第二个数组返回期望的结果,而第一个数组返回错误的结果0
?
在php中,如果你想连接字符串,它是.
运算符,所以你需要的不是+=
,而是.=
您使用.
进行串联,而不是仅用于添加的+
:
$rev .= $str[$j];