PHP实现字符串翻转功能的方法【递归与循环算法】

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP实现字符串翻转功能的方法。分享给大家供大家参考,具体如下:

提到实现字符串反转的方法,大家都会想到用循环。确实,循环是一个内存占用量小且实现简单的方式。但是还有一种方式可以实现这样的功能,那就是递归。

php支持递归函数,递归函数就是函数调用自己本身。这些函数特别适用于动态浏览数据结构,例如连接列表和树。

例子:

<?php 
//递归实现字符串翻转
function reverse_r($str){
  if(strlen($str)>0){
    reverse_r(substr($str,1));
  }
  echo substr($str,0,1);
  return;
}
//循环实现字符串翻转
function reverse_i($str){
  for($i=1; $i<=strlen($str);$i++){
    echo substr($str,-$i,1);
  }
  return;
}
reverse_r("Hello");
reverse_i("everyone");
?>

结果:

更多关于PHP相关内容感兴趣的读者可查看本站专题:《PHP数据结构与算法教程》、《PHP数组(Array)操作技巧大全》、《php字符串(string)用法总结》及《php程序设计算法总结

希望本文所述对大家PHP程序设计有所帮助。

相关文章

php及codeigniter使用session-cookie的方法(详解)

1、读写cookie <1>原生 setcookie('name','value',time) 设置失败,没有正常写入浏览器,测试失败,原因未知 <2>...

php写app用的框架整理

PHP开发app常用的三种框架介绍 1、ThinkPHP框架 TP框架是一共快速兼容简单的轻量级国产PHP开发框架,使用面向对象的结构和MVC模式进行开发。它可以支持Windows、Li...

php实现将二维关联数组转换成字符串的方法详解

本文实例讲述了php实现将二维关联数组转换成字符串的方法。分享给大家供大家参考,具体如下: 需求 项目中遇到了二维关联数组转字符串的问题,查阅相关资料,写了如下程序,并且能过滤重复的关键...

PHP UTF8编码内的繁简转换类

曾找过一个JS版的,但是到了UTF8编码里不能用,于是就产生了自已写一个的念头。其实我这个代码的实现原理很简单的,只是一个替换字符集的过程,相信大部份人都可以写得出来。以下是代码,不知道...

php5中date()得出的时间为什么不是当前时间的解决方法

相关设置是修改php.ini中的 date.timezone 参数: [Date] ; Defines the default ...