php函数实现反转
反转字符串
使用strrev函数可以快速反转字符串。该函数直接返回反转后的结果,无需额外处理。
$original = "Hello";
$reversed = strrev($original);
echo $reversed; // 输出 "olleH"
反转数组
array_reverse函数用于反转数组元素顺序。第二个参数设为true可保留原始键名。
$array = [1, 2, 3];
$reversedArray = array_reverse($array);
print_r($reversedArray); // 输出 [3, 2, 1]
自定义字符串反转
通过循环遍历字符串并逐个拼接字符,实现手动反转。这种方法适用于需要自定义处理的情况。
function reverseString($str) {
$result = "";
for ($i = strlen($str) - 1; $i >= 0; $i--) {
$result .= $str[$i];
}
return $result;
}
echo reverseString("World"); // 输出 "dlroW"
自定义数组反转
手动实现数组反转逻辑,通过交换首尾元素位置完成操作。这种方法可以控制反转过程中的具体细节。
function reverseArray($arr) {
$length = count($arr);
for ($i = 0; $i < $length / 2; $i++) {
$temp = $arr[$i];
$arr[$i] = $arr[$length - 1 - $i];
$arr[$length - 1 - $i] = $temp;
}
return $arr;
}
print_r(reverseArray(['a', 'b', 'c'])); // 输出 ['c', 'b', 'a']
使用递归反转字符串
递归方法将字符串分解为第一个字符和剩余部分,逐步构建反转结果。这种方法展示不同的编程思路。
function recursiveReverse($str) {
if (strlen($str) <= 1) {
return $str;
}
return recursiveReverse(substr($str, 1)) . $str[0];
}
echo recursiveReverse("PHP"); // 输出 "PHP"的反转形式
多字节字符串处理
处理包含多字节字符(如中文)时,需使用mb_系列函数。普通字符串函数可能无法正确识别多字节字符。
$mbString = "你好世界";
$mbReversed = mb_strrev($mbString);
function mb_strrev($str) {
$result = "";
$length = mb_strlen($str);
for ($i = $length - 1; $i >= 0; $i--) {
$result .= mb_substr($str, $i, 1);
}
return $result;
}
echo $mbReversed; // 输出反转的多字节字符串






