php实现翻转
PHP实现字符串翻转
使用内置函数strrev()可以直接翻转字符串:
$str = "Hello World";
$reversed = strrev($str);
echo $reversed; // 输出 dlroW olleH
手动实现字符串翻转
通过循环遍历字符串字符实现翻转:
function reverseString($str) {
$reversed = "";
for ($i = strlen($str) - 1; $i >= 0; $i--) {
$reversed .= $str[$i];
}
return $reversed;
}
$result = reverseString("Hello");
echo $result; // 输出 olleH
使用数组函数翻转字符串
将字符串转为数组后使用array_reverse()函数:

$str = "Hello";
$arr = str_split($str);
$reversedArr = array_reverse($arr);
$reversedStr = implode("", $reversedArr);
echo $reversedStr; // 输出 olleH
递归方式翻转字符串
通过递归调用实现字符串翻转:
function reverseStringRecursive($str) {
if (strlen($str) <= 1) {
return $str;
}
return reverseStringRecursive(substr($str, 1)) . $str[0];
}
$result = reverseStringRecursive("World");
echo $result; // 输出 dlroW
使用栈结构翻转字符串
模拟栈的先进后出特性实现翻转:

function reverseWithStack($str) {
$stack = [];
$length = strlen($str);
for ($i = 0; $i < $length; $i++) {
array_push($stack, $str[$i]);
}
$reversed = "";
while (!empty($stack)) {
$reversed .= array_pop($stack);
}
return $reversed;
}
$result = reverseWithStack("Stack");
echo $result; // 输出 kcatS
处理多字节字符翻转
对于包含中文等多字节字符的字符串,需要使用mb_函数:
function mb_strrev($str) {
$reversed = "";
$length = mb_strlen($str, 'UTF-8');
for ($i = $length - 1; $i >= 0; $i--) {
$reversed .= mb_substr($str, $i, 1, 'UTF-8');
}
return $reversed;
}
$result = mb_strrev("你好世界");
echo $result; // 输出 界世好你
数组元素翻转
翻转数组元素的顺序:
$array = [1, 2, 3, 4];
$reversedArray = array_reverse($array);
print_r($reversedArray); // 输出 [4, 3, 2, 1]






