在PHP中,数组函数 array_walk_recursive () 使用回调函数递归遍历数组元素。

函数语法:array_walk_recursive ( array &$array , callable $callback [, mixed $userdata = NULL ] ) : bool

函数参数说明:参数描述

array必需。规定数组。

callback必需。一般情况下 callback 接受两个参数。array 参数的值作为第一个,键名作为第二个。

userdata可选。如果提供了可选参数 userdata,将被作为第三个参数传递给 callback funcname。

array_walk_recursive () 函数使用用户自定义回调函数递归遍历数组元素。本函数会递归到更深层的数组中去。

注意:

可以通过把用户自定义函数中的第一个参数指定为引用:&$value,来改变数组元素的值。

举例1,回调函数递归遍历数组元素:<?php

// 定义数组

$arr = array('a' => 'apple', 'b' => 'banana', 'c' => array('c1' => 'green orange', 'c2' => 'yello orange'));

// 数组递归调用自定义函数

array_walk_recursive($arr, function ($v, $k) {

echo $v . '
';

});

以上代码输出如下:apple

banana

green orange

yello orange

举例2,回调函数递归遍历数组元素,传递额外参数:<?php

// 定义数组

$arr = array('a' => 'apple', 'b' => 'banana', 'c' => array('c1' => 'green orange', 'c2' => 'yello orange'));

// 数组递归调用自定义函数

array_walk_recursive($arr, function ($v, $k, $udata) {

echo $udata . $v . '
';

}, 'I like ');

以上代码输出如下:I like apple

I like banana

I like green orange

I like yello orange

php 回调递归,PHP数组函数 array_walk_recursive (使用回调函数递归遍历数组元素)相关推荐

  1. js遍历数组foreach_JavaScript forEach –如何在JS中遍历数组

    js遍历数组foreach The JavaScript forEach method is one of the several ways to loop through arrays. Each ...

  2. python遍历数组的两种方法_python同时遍历数组的索引和值的实例

    你想在迭代一个序列的同时跟踪正在被处理的元素索引. 获取索引 内置的 enumerate() 函数可以很好的解决这个问题: >>> my_list = ['a', 'b', 'c'] ...

  3. java 二维数组的筛选_java中的筛选遍历数组,实例展示

    java中关于数组的知识点也是十分丰富的,上次已经为大家介绍过java中的二维数组排序是怎样的主要内容,今天再为大家介绍一些与数组相关的其他内容,也就是java中的筛选遍历数组,一起来看看吧. 一.$ ...

  4. php 实现数组数据查询,thinkphp数据查询和遍历数组实例_PHP

    本文实例讲述了thinkphp数据查询和遍历数组的方法.分享给大家供大家参考.具体方法如下: 数据库可以使用DSN方法进行配置: 代码如下: 'DB_PREFIX'=>'tp_', //设置表前 ...

  5. 求二维数组中的最大值和最小值C语言,c语言 写一个子函数要求找出一个二维数组的最大值...

    并且返回两个维 求助 想不出来怎么写 题主的问题问的不够清楚.我假设你说的二维数组里面保存是整数,问的是找到二维数组中的最大值,并且返回一个最大值的位置.函数内部两个for循环遍历数组,能找到最大值和 ...

  6. 在JavaScript中逐个遍历数组?

    如何使用JavaScript遍历数组中的所有条目? 我以为是这样的: forEach(instance in theArray) 其中theArray是我的数组,但这似乎是不正确的. #1楼 如果您不 ...

  7. JS中循环遍历数组的几种常用方式总结

    第一种:for循环,也是最常见的 最简单的一种,也是使用频率最高的一种,虽然性能不弱,但仍有优化空间 const arr = [11, 22, 33, 44, 55, 66, 77, 88]; for ...

  8. PHP遍历数组的几种方法

    这三种方法中效率最高的是使用foreach语句遍历数组.从PHP4开始就引入了foreach结构,是PHP中专门为遍历数组而设计的语句,推荐大家使用.先分别介绍这几种方法 PHP中遍历数组有三种常用的 ...

  9. 【数据结构笔记26】根据一棵树的先序/中序遍历Push与Pop内容,输出这棵树的先序、中序、后序遍历数组(不需要真的建立出树)

    本次笔记内容: 练习题-TTA.1 题意理解 练习题-TTA.2 核心算法 文章目录 题意理解 根据Push与Pop直接得出先序.中序数组 根据pre和in生成post C实现 题意理解 先来回忆非递 ...

最新文章

  1. Web API与JWT认证
  2. 在虚拟机上linux系统上上网
  3. 信息系统项目管理师-信息系统成本管理核心知识点思维脑图
  4. 使用RestTemplate消费Hybris User API获取指定用户的信息
  5. 洛谷 P1656 炸铁路
  6. 【Selenium 爬爬 猪 八 戒】
  7. maven依赖avro_Apache Avro使用入门指南
  8. java提示框easyui风格_[Java教程]jQuery EasyUI 提示框(Messager)用法
  9. 2005毕业生薪酬预测女超男
  10. MySQL binlog日志三种模式选择及配置
  11. 2021-08-15 reponse文件下载路径
  12. OracleLinux6的安装
  13. 侠客X部分截图 官方论坛开发注册 邀您一起公测。
  14. NAS网络存储使用教程之如何新建用户
  15. vue项目实现文字转换成语音播放功能
  16. php元换成万元,元换算成万元(元与万元的换算器)
  17. 用纯css打造表格第一行和前几列锁定
  18. 纪念一下获得十大优秀学生
  19. java locale string_java.lang.String.toUpperCase(Locale locale)方法实例
  20. 微信小程序纯前端生成海报并保存本地

热门文章

  1. 一、网页端文件流的传输
  2. idea怎么使用jacoco生成报告_Intellij IDEA解析jacoco结果文件的方法
  3. 基于SfM计算相机姿态
  4. Udacity机器人软件工程师课程笔记(三十三) - 蒙特卡洛定位算法(MCL)
  5. Udacity机器人软件工程师课程笔记(二十九) - 全卷积网络(FCN)
  6. 几个比较冷门的prototype扩展方法:去掉html标签、去掉a标签、去掉style样式,以及判断是否为html代码的代码片段
  7. 【古法炮制】最原始的解决JAVA接口跨域的问题
  8. 在Ubuntu 16.04.3 LTS上搭建QUIC交互demo
  9. Rocksdb 获取当前db内部的有效key个数 (估值)
  10. hive函数 get_json_object的使用