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

yipeiwu_com7年前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使用栈解决约瑟夫环问题算法。分享给大家供大家参考,具体如下: 约瑟夫环问题: 39 个犹太人与Josephus及他的朋友躲到一个洞中,39个犹太人决定宁愿死也不要被敌...

php实现留言板功能(代码详解)

php实现留言板功能(代码详解)

简单的PHP留言板制作 做基础的留言板功能  需要三张表: 员工表,留言表,好友表 首先造一个登入页面: <form action="drcl.php" metho...

php根据一个给定范围和步进生成数组的方法

这里给定开始和结束值,再给定一个步进值,就可以生成一个等差数组。 function array_range($from, $to, $step=1){ $array = arra...

PHP几个数学计算的内部函数学习整理

round round - 对浮点数进行四舍五入。round 函数语法如下: round(float,precision) 其中参数 precision 表示小数点后面要保持的精度位数。...

Php output buffering缓存及程序缓存深入解析

Php output buffering缓存及程序缓存深入解析

下面测试ob缓存和程序缓存:在测试前为了测试效果更明显,我们在php.ini里先关闭ob缓存并设置明显的错误级别。Output_buffering=offDisplay_errors=o...