PHP使用递归算法无限遍历数组示例

yipeiwu_com6年前PHP代码库

本文实例讲述了PHP使用递归算法无限遍历数组。分享给大家供大家参考,具体如下:

PS:为方便阅读,此处代码使用php代码格式化工具http://tools.jb51.net/code/phpformat进行了格式化处理)

<?php
//无限遍历数组
$a1 = array("a", "b", "c"); //一维数组
$a2 = array(array(21, 3, 6), array("a", "b", "c")); //二维数组
$a3 = array(array(array(5, 55), 4, 444), 2, 7, 6, 8, array("w", "d", array(3, 2, "a"), "s")); //多维不规则数组
function fun($a) {
  foreach ($a as $val) {
    if (is_array($val)) { //如果键值是数组,则进行函数递归调用
      fun($val);
    } else { // 如果键值是数值,则进行输出
      echo "$val<br />";
    } //end if
    
  } //end foreach
  
} //end fun
//fun($a1);
//fun($a2);
fun($a3);
?>

输出:

5
55
4
444
2
7
6
8
w
d
3
2
a
s

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

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

相关文章

php实现用于验证所有类型的信用卡类

本文实例讲述了php实现用于验证所有类型的信用卡类。分享给大家供大家参考。具体如下: 这个php类比较完整,可以用于验证各种不同的信用卡,针对信用卡的卡号的通用规则进行了验证,同时对不同...

使用Huagepage和PGO来提升PHP7的执行性能

Hugepage PHP7刚刚发布了RC4, 包含一些bug修复和一个我们最新的性能提升成果, 那就是”HugePageFy PHP TEXT segment”, 通过启用这个特性,PH...

PHP使用XMLWriter读写xml文件操作详解

本文实例讲述了PHP使用XMLWriter读写xml文件操作。分享给大家供大家参考,具体如下: 米扑科技旗下的多个产品,需要脚本自动生成sitemap.xml,于是重新温习一遍PHP X...

PHP的博客ping服务代码

PHP的ping服务代码其实在以前我已经写过一个类,不过,有很多朋友加我好友说,看不太懂,那个是以类的形式写的,可能如果直接放到代码里直接用不太行,今天发一下能够直接用的ping函数,希...

php生成xml时添加CDATA标签的方法

本文实例讲述了php生成xml时添加CDATA标签的方法。分享给大家供大家参考。具体实现方法如下: 其实php生成xml时添加CDATA标签方法非常的简单,因为是一个在xml中可以存储各...