摘要:通过多维数组中的获取假设有以下多维数组如果知道了多维数组中的某个值,我们可以用递归来获取这个对应的,但除了递归,我们还可以用函数来完成这个操作函数有两个参数,第一个参数使我们要处理的数组,第二个参数是一个回调函数,这是一个我们自定义的函数。
通过多维数组中的key获取value
假设有以下多维数组
$array = [ "zero"=>[ "e"=>"ss", "f"=>"dd", ], "e"=>"111", "second"=>"222", "third"=>"333" ];
如果知道了多维数组中的某个key值, 我们可以用递归来获取这个key对应的value,但除了递归,我们还可以用array_walk_recursive函数来完成这个操作
/** Obtain the value by key * * */ function recur($key, $array){ $data = []; array_walk_recursive($array, function ($v, $k) use ($key, &$data) { if ($k == $key) { array_push($data, $v); } }); return $data; } $data = recur("e", $array); print_r($data);
array_walk_recursive函数有两个参数, 第一个参数使我们要处理的数组,第二个参数是一个回调函数,这是一个我们自定义的函数。在这个函数中,我们设定 如果$k等于我们给定的key键值,就将这个key所对应的值value加入到$data数组中。
其他函数类似的函数还有array_walk,但这个函数只能应用一维数组,要是用多维数组,用array_walk_recursive更好
文章版权归作者所有,未经允许请勿转载,若此文章存在违规行为,您可以联系管理员删除。
转载请注明本文地址:https://www.ucloud.cn/yun/30584.html
摘要:中对多维数组特定列的提取,是个很常用的功能,正因为如此,在版本之后,添加了一个专用的函数。变种方法如下,意为把数组的每一项值的开头值移出,并获取移除的值作为新数组。注意此时新数组的键仍是原数组的键,如下。 PHP中对多维数组特定列的提取,是个很常用的功能,正因为如此,PHP在5.5.0版本之后,添加了一个专用的函数array_column()。当然,如果你的PHP版本低于5.5.0,就...
摘要:下面是我写的将多维数组转换为一维数组的类方法,转换的一维数组的每个元素包含了相应的值在原有多维数组中的以及维度即深度如果对应的原有元素也是数组,则相应的一维元素的则表示为当然,这个可以改。在格式化输出多维数组的时候比较有效。 下面是我写的将多维数组转换为一维数组的类方法,转换的一维数组的每个元素包含了相应的值在原有多维数组中的key,value以及维度(即深度),如果对应的原有元素也是...
摘要:学习至今一年有余,笔记积累挺多的,也挺杂的,写篇文章整理一下吧。基础部分输出文本的基础指令和。函数内部声明的变量拥有作用域,只能在函数内部进行访问。布尔型要指定一个布尔值,使用关键字或。 php学习至今一年有余,笔记积累挺多的,也挺杂的,写篇文章整理一下吧。 php基础部分 showImg(http://segmentfault.com/img/bVcWhR); PHP 输出文本...
摘要:下列的所有排序函数都是直接作用于数组本身,而不是返回一个新的有序的数组。倒序并保持索引关系,按键名排序按键名倒序使用用户自定义的比较函数对数组中的值进行排序,要排序的数组需要用一种不寻常的标准进行排序,那么应该使用此函数。 数组排序,共13个 函数中有u的,能自定义比较函数;有k的,按照键来排序;有r(reverse)的,倒序;有a(association)的,一定是键值关联,除了r...
摘要:将返回通过回调真值测试的第一个项的键。方法将集合分割为多个给定大小的较小集合。它可用于在任何位置的调试和查找集合内的内容。方法用于遍历整个集合。这对集合同样有效。它将导致由第二个参数的值作为键的集合。它接受回调并传递并将集合传递给它。 showImg(https://segmentfault.com/img/remote/1460000018924972); 文章转自:https://...
阅读 2252·2021-09-26 09:55
阅读 3583·2021-09-23 11:22
阅读 2151·2019-08-30 15:54
阅读 1894·2019-08-28 18:03
阅读 2590·2019-08-26 12:22
阅读 3425·2019-08-26 12:20
阅读 1723·2019-08-26 11:56
阅读 2245·2019-08-23 15:30