PHP中如何获取一维数组键名,方法是什么
Admin 2022-07-01 群英技术资讯 527 次浏览
本文实例讲述了PHP实现通过二维数组键值获取一维键名操作。分享给大家供大家参考,具体如下:
有如下既定数组:
$inviteType = [ '扫码' => [ 'type' => 0, 'point' => 5, ], '评论' => [ 'type' => 1, 'point' => 5, ], '分享' => [ 'type' => 2, 'point' => 10, ], '邀请' => [ 'type' => 3, 'point' => 50, ], '关注' => [ 'type' => 4, 'point' => 50, ], '签到' => [ 'type' => 5, 'point' => 5, ], '完善资料' => [ 'type' => 6, 'point' => 50, ], ];
需求:
通过type里面的键值,比如0这个值,获取到“扫码”这个中文文本,是个很头痛的问题,最后通过查找资料,发现了一个很好用的方法,可以实现解决这个需求:
$arr = array_map('array_shift',$inviteType); echo "<pre>"; print_r($arr); echo "</pre>";
array_map('array_shift',array)
,该方法的意思是将array的每一项的第一个键值移除,并返回该值,注意此时的键名仍然是array的键名,输出结果如下:
Array
(
[扫码] => 0
[评论] => 1
[分享] => 2
[邀请] => 3
[关注] => 4
[签到] => 5
[完善资料] => 6
)
注意!返回的值是每一项的第一个键值,如果将point放在二维数组第一个,则返回的结果就是point的值了(适用范围狭窄),因此实际使用中需要把指定字段调整到第一个!
得到了想要的数据了,自然能获取到相对的键名了:
$type = 0; $key = array_search($type,$arr); echo $key;
输出结果如下:
扫码
所以通过二维数组的每一项第一个键值获取一维键名可以总结为下面这行代码:
array_search('type',array_map('array_shift',$array))
免责声明:本站发布的内容(图片、视频和文字)以原创、转载和分享为主,文章观点不代表本网站立场,如果涉及侵权请联系站长邮箱:mmqy2019@163.com进行举报,并提供相关证据,查实之后,将立刻删除涉嫌侵权内容。
猜你喜欢
这篇文章主要介绍了PHP设计模式之数据访问对象模式(DAO)原理与用法,结合实例形式分析了PHP数据访问对象模式的概念、原理、用法及操作注意事项,需要的朋友可以参考下
这篇文章主要给大家介绍了关于Laravel使用swoole实现websocket主动消息推送的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者使用Laravel具有一定的参考学习价值,需要的朋友们下面来一起学习学习吧
在本篇文章里小编给大家整理的是一篇关于如何解决php-fpm启动不了问题相关文章,有需要的朋友们可以跟着学习下。
本文实例讲述了Thinkphp 框架扩展之驱动扩展。下文有实例供大家参考,对大家了解操作过程或相关知识有一定的帮助,而且实用性强,希望这篇文章能帮助大家,下面我们一起来了解看看吧。
php7.2运行失败的解决办法:1、在PHP源码目录下执行“vi Makefile”;2、找到EXTRA_LIBS行;3、在行末添加“-llber”;4、保存退出并再次make即可。
成为群英会员,开启智能安全云计算之旅
立即注册Copyright © QY Network Company Ltd. All Rights Reserved. 2003-2020 群英 版权所有
增值电信经营许可证 : B1.B2-20140078 粤ICP备09006778号 域名注册商资质 粤 D3.1-20240008