当前位置:首页 > PHP

php 如何实现字符串翻转

2026-04-03 06:03:33PHP

使用 strrev 函数

PHP 内置的 strrev 函数可以直接实现字符串翻转,适用于简单的字符串反转需求。

$str = "Hello World";
$reversed = strrev($str);
echo $reversed; // 输出 "dlroW olleH"

手动循环翻转

通过循环遍历字符串,从末尾开始逐个拼接字符,适合需要自定义处理的情况。

php 如何实现字符串翻转

$str = "Hello World";
$reversed = "";
for ($i = strlen($str) - 1; $i >= 0; $i--) {
    $reversed .= $str[$i];
}
echo $reversed; // 输出 "dlroW olleH"

使用数组函数

将字符串拆分为数组,利用 array_reverse 翻转数组后重新拼接。

php 如何实现字符串翻转

$str = "Hello World";
$reversed = implode("", array_reverse(str_split($str)));
echo $reversed; // 输出 "dlroW olleH"

处理多字节字符(如中文)

对于包含多字节字符(如 UTF-8 编码的中文),需使用 mb_ 系列函数避免乱码。

$str = "你好,世界";
$reversed = mb_strrev($str, "UTF-8");
echo $reversed; // 输出 "界世,好你"

function mb_strrev($str, $encoding = null) {
    $chars = mb_str_split($str, 1, $encoding ?: mb_internal_encoding());
    return implode("", array_reverse($chars));
}

递归实现翻转

通过递归函数逐层截取字符串末尾字符,适合学习递归逻辑的场景。

$str = "Hello World";
$reversed = reverseString($str);
echo $reversed; // 输出 "dlroW olleH"

function reverseString($str) {
    if (strlen($str) <= 1) return $str;
    return reverseString(substr($str, 1)) . $str[0];
}

分享给朋友:

相关文章

vue如何实现排序

vue如何实现排序

实现数组排序 在Vue中实现数组排序可以通过computed属性或methods来处理。假设有一个数组items,可以创建一个计算属性返回排序后的数组: data() { return {…

vue如何实现滤镜

vue如何实现滤镜

Vue 实现滤镜的方法 在 Vue 中实现滤镜效果可以通过多种方式,以下是常见的几种方法: 使用 CSS filter 属性 通过 CSS 的 filter 属性可以直接为元素添加滤镜效果。在 Vu…

react如何实现混入

react如何实现混入

在React中实现混入(Mixin)功能可以通过以下几种方式实现,React官方已不推荐使用传统的React.createClass混入方式,但可通过高阶组件或自定义Hook替代。 高阶组件(HOC…

java如何输入字符串

java如何输入字符串

使用 Scanner 类 在 Java 中,可以通过 java.util.Scanner 类来输入字符串。以下是一个示例代码: import java.util.Scanner; public c…

java如何实现异步

java如何实现异步

Java实现异步的方法 Java中实现异步编程可以通过多种方式,每种方式适用于不同的场景和需求。以下是常见的实现方法: 使用Thread类 创建新线程执行异步任务是最基础的方式。通过继承Thread…

vue如何实现递归

vue如何实现递归

递归组件的实现方法 在Vue中实现递归组件通常用于渲染树形结构或嵌套数据。核心思路是组件在其模板中调用自身,但需注意终止条件以避免无限循环。 定义递归组件 组件需设置name选项,才能在模板中调用自…