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


Posted in PHP onJanuary 13, 2017

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

PS:为方便阅读,此处代码使用php代码格式化工具http://tools.3water.com/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如何编写易读的代码
Jul 10 PHP
PHP 日志缩略名的创建函数代码
May 26 PHP
php Smarty 字符比较代码
Feb 27 PHP
PHP设计模式之调解者模式的深入解析
Jun 13 PHP
使用PHP计算两个路径的相对路径
Jun 14 PHP
解析PHP跨站刷票的实现代码
Jun 18 PHP
php数组查找函数in_array()、array_search()、array_key_exists()使用实例
Apr 29 PHP
ThinkPHP里用U方法调用js文件实例
Jun 18 PHP
PHP程序员不应该忽略的3点
Oct 09 PHP
PHP文件上传之多文件上传的实现思路
Jan 27 PHP
php实现用户注册密码的crypt加密
Jun 08 PHP
Laravel使用swoole实现websocket主动消息推送的方法介绍
Oct 20 PHP
PHP字符串逆序排列实现方法小结【strrev函数,二分法,循环法,递归法】
Jan 13 #PHP
PHP使用strrev翻转中文乱码问题的解决方法
Jan 13 #PHP
使用php完成常见的文件上传功能(推荐)
Jan 13 #PHP
Yii2实现增删改查后留在当前页的方法详解
Jan 13 #PHP
PHP文件上传、客户端和服务器端加限制、抓取错误信息、完整步骤解析
Jan 12 #PHP
php中分页及SqlHelper类用法实例
Jan 12 #PHP
PHP生成图片验证码功能示例
Jan 12 #PHP
You might like
php 什么是PEAR?
2009/03/19 PHP
php smarty模版引擎中变量操作符及使用方法
2009/12/11 PHP
php 文件上传代码(限制jpg文件)
2010/01/05 PHP
PHP迭代器的内部执行过程详解
2013/11/12 PHP
php调用C代码的实现方法
2014/03/11 PHP
phpmailer发送邮件之后,返回收件人是否阅读了邮件的方法
2014/07/19 PHP
Laravel 5.2 文档 数据库 ―― 起步介绍
2019/10/21 PHP
JS实现仿QQ聊天窗口抖动特效
2015/05/10 Javascript
js实现YouKu的漂亮搜索框效果
2015/08/19 Javascript
JS控制页面跳转时未请求要跳转的地址怎么回事
2016/10/14 Javascript
JS实现类似51job上的地区选择效果示例
2016/11/17 Javascript
对vuejs的v-for遍历、v-bind动态改变值、v-if进行判断的实例讲解
2018/08/27 Javascript
Layui 解决表格异步调用后台分页的问题
2019/10/26 Javascript
微信小程序实现录制、试听、上传音频功能(带波形图)
2020/02/27 Javascript
浅谈vue 二级路由嵌套和二级路由高亮问题
2020/08/06 Javascript
antd Form组件方法getFieldsValue获取自定义组件的值操作
2020/10/29 Javascript
python中Genarator函数用法分析
2015/04/08 Python
Python中列表的一些基本操作知识汇总
2015/05/20 Python
json跨域调用python的方法详解
2017/01/11 Python
Python中类型检查的详细介绍
2017/02/13 Python
利用Hyperic调用Python实现进程守护
2018/01/02 Python
Python实现正弦信号的时域波形和频谱图示例【基于matplotlib】
2018/05/04 Python
基于腾讯云服务器部署微信小程序后台服务(Python+Django)
2019/05/08 Python
Python lxml模块的基本使用方法分析
2019/12/21 Python
matplotlib 画双轴子图无法显示x轴的解决方法
2020/07/27 Python
详解CSS3 用border写 空心三角箭头 (两种写法)
2017/09/29 HTML / CSS
全球最大的服务市场:Fiverr
2017/01/03 全球购物
捷克购买家具网站:JENA nábytek
2020/03/19 全球购物
Lucene推荐的分页方式是什么?
2015/12/07 面试题
旺仔牛奶广告词
2014/03/20 职场文书
我爱读书演讲稿
2014/05/07 职场文书
暑期政治学习心得体会
2014/09/02 职场文书
冰峪沟导游词
2015/02/09 职场文书
浙江省杭州市平均工资标准是多少?
2019/07/09 职场文书
MySQL Router的安装部署
2021/04/24 MySQL
Python常用配置文件ini、json、yaml读写总结
2021/07/09 Python