php实现字符反转
使用 strrev 函数反转字符串
strrev 是 PHP 内置的字符串反转函数,直接传入字符串即可返回反转后的结果。
$original = "Hello World";
$reversed = strrev($original);
echo $reversed; // 输出 "dlroW olleH"
手动实现字符串反转
通过循环遍历字符串的每个字符,从末尾开始拼接成新字符串。
$original = "Hello World";
$reversed = "";
for ($i = strlen($original) - 1; $i >= 0; $i--) {
$reversed .= $original[$i];
}
echo $reversed; // 输出 "dlroW olleH"
使用 array_reverse 和 implode 反转字符串
将字符串拆分为数组,反转数组后再合并为字符串。
$original = "Hello World";
$chars = str_split($original);
$reversedChars = array_reverse($chars);
$reversed = implode("", $reversedChars);
echo $reversed; // 输出 "dlroW olleH"
处理多字节字符(如中文)
使用 mb_strlen 和 mb_substr 确保多字节字符(如 UTF-8)正确反转。
$original = "你好世界";
$reversed = "";
$length = mb_strlen($original, 'UTF-8');
for ($i = $length - 1; $i >= 0; $i--) {
$reversed .= mb_substr($original, $i, 1, 'UTF-8');
}
echo $reversed; // 输出 "界世好你"
使用递归函数反转字符串
通过递归逐步截取字符串的最后一个字符并拼接。
function reverseString($str) {
if (strlen($str) <= 1) {
return $str;
}
return reverseString(substr($str, 1)) . $str[0];
}
$original = "Hello World";
$reversed = reverseString($original);
echo $reversed; // 输出 "dlroW olleH"
以上方法适用于不同场景,选择时需考虑性能(如 strrev 最快)或特殊需求(如多字节支持)。







