首页 / PHP / 如何查找指定键的路径
如何查找指定键的路径
内容导读
互联网集市收集整理的这篇技术教程文章主要介绍了如何查找指定键的路径,小编现在分享给大家,供广大互联网技能从业者学习和参考。文章包含1742字,纯文字阅读大概需要3分钟。
内容图文
![如何查找指定键的路径](/upload/InfoBanner/zyjiaocheng/197/f1157708b180495cadd36375e606559c.jpg)
高手帮个忙 谢谢了 我研究一大天了 没有搞定
$array = array( 1=>array( "name"=>"粮油" ), 2=>array( "name"=>"果蔬", "chlids"=>array( 3=>array( "name"=>"水果", "chlids"=>array( 5=>array( "name"=>"苹果", "childs"=>array( 8=>array( "name"=>"青苹果", ), 9=>array( "name"=>"红富士", ) ) ), 6=>array( "name"=>"橘子" ), 7=>array( "name"=>"大鸭梨" ) ) ), 4=>array( "name"=>"蔬菜", "chlids"=>array( 3=>array( "name"=>"白菜" ), 3=>array( "name"=>"芹菜" ) ) ), ) ) );
回复讨论(解决方案)
$r = find($array, '红富士');print_r($r);function find($ar, $name='') { $res = array(); foreach($ar as $k=>$v) { if($v['name'] == $name) $res[] = $k; elseif(isset($v['childs']) && ! $res) { $res = find($v['childs'], $name); if($res) array_unshift($res, $k); } } return $res;}Array
(
[0] => 2
[1] => 3
[2] => 5
[3] => 9
)
另外请注意:你的部分 childs 键名写错了,写成了 chlids
$r = find($array, '红富士');print_r($r);function find($ar, $name='') { $res = array(); foreach($ar as $k=>$v) { if($v['name'] == $name) $res[] = $k; elseif(isset($v['childs']) && ! $res) { $res = find($v['childs'], $name); if($res) array_unshift($res, $k); } } return $res;}Array
(
[0] => 2
[1] => 3
[2] => 5
[3] => 9
)
另外请注意:你的部分 childs 键名写错了,写成了 chlids
还在吗?我的问题有点错误,是查找红富士的键 也就是9 然后返回这个结果 这个结果是对的
内容总结
以上是互联网集市为您收集整理的如何查找指定键的路径全部内容,希望文章能够帮你解决如何查找指定键的路径所遇到的程序开发问题。 如果觉得互联网集市技术教程内容还不错,欢迎将互联网集市网站推荐给程序员好友。
内容备注
版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 gblab@vip.qq.com 举报,一经查实,本站将立刻删除。
内容手机端
扫描二维码推送至手机访问。
来源:【匿名】