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中反射的应用

反射是在PHP运行状态中,扩展分析PHP程序,导出或提取出关于类、方法、属性、参数等的详细信息,包括注释。这种动态获取的信息以及动态调用对象的方法的功能称为反射API。反射是操纵面向对象...

phpfpm的作用和用法

PHP-FPM(FastCGI Process Manager:FastCGI进程管理器)是一个PHPFastCGI管理器,对于PHP 5.3.3之前的php来说,是一个补丁包 ,旨在将...

php计算两个整数的最大公约数常用算法小结

本文实例讲述了php计算两个整数的最大公约数常用算法。分享给大家供大家参考。具体如下: 复制代码 代码如下:<?php //计时,返回秒 function  mi...

php设置静态内容缓存时间的方法

本文实例讲述了php设置静态内容缓存时间的方法。分享给大家供大家参考。具体方法分析如下: 在利用百度工具作一个小测试时提示我们需要设置静态内容缓存时间了,我自己没有服务器权限操作,只能从...

dedecms中常见问题修改方法总结

新手常见问题,此贴是早些时候我发的,在3.1正式版中.有些问题已得到修正,不过仍可作为修改或学习参考 请大家花点耐心看完这个吧,这些问题很多人都有碰到.何必要不停的发贴子问呢? 另外,看...