PHP实现通过二维数组键值获取一维键名操作示例
作者:baozoumingren 发布时间:2023-11-22 12:00:52
标签:PHP,二维数组,键值,键名
本文实例讲述了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))
希望本文所述对大家PHP程序设计有所帮助。
来源:https://blog.csdn.net/baozoumingren/article/details/81034068
0
投稿
猜你喜欢
- 从今天开始起,基督山将和大家一起进入ASP.net 诸多程序的学习中,老实说,.net到底是法宝还是垃圾,我们拭目以待。有任何问题,联络基督
- [数据恢复故障描述]一台重要的MYSQL数据库服务器,146GB*2,RAID1,约130GB DATA卷,存储了大约200~300个数据库
- 如果你只使用一个更新日志,你只须清空日志文件,然后移走旧的更新日志文件到一个备份中,然后启用新的更新日志。用下列方法可以强制服务器启用新的更
- 阅读作者上一篇文章:段正淳的css笔记(4)css代码的简写CSS未知图片垂直居中的方法:一天大家在团队中讨论“未知图片垂直居中”的问题,突
- 是的,我在这里要说:注册表单将死(好拗口啊,但是不知道怎么翻译更恰当)。回想一下,当你想享受一个网站服务的时候,碰到的第一件事是什么?一个表
- 记得在面试腾讯实习生的时候,面试官问了我这样一道问题。//下述两种声明方式有什么不同 function foo(){}; 
- 前言刚接触golang不久,有些环境无法融会贯通,现在针对开发过程中遇到的问题做个排查记录问题背景开发环境区分不同网段,同一个程序引入到另一
- 从publish 表中取出第 n 条到第 m 条的记录的sql语句写法:SELECT TOP m-n+1 *&
- 由于日期存在不同位数的月份或天数,出现参差不齐,既不美观也在日期比较时不好操作。如使用本涵数就会排列整齐:'================
- 来到杭州,迅速租了房子,扫了日常用品。再非专业地提前体验一下与工作有那么一点点点点点相关的UED(用户体验设计)。良好的用户体验是一种非必须
- 1.SYS用户具有DBA权限,并且拥有SYS模式,只能通过SYSDBA登陆数据库。是Oracle数据库中权限最高的帐号SYSTEM具有DBA
- Knockout是一个以数据模型(data model)为基础的能够帮助你创建富文本,响应显示和编辑用户界面的JavaScript类库。任何
- 理解 CPU 工作原理,重要的是理解 pc 不停地自增地址,顺序执行程序指令。当遇到跳转指令时,会将 pc 重置为新地址。在顺序执行程序指令
- '定义变量 Dim cn,rs,Sql Sql = "sel
- Cookie是一种小型文本文件,存储在用户计算机中,用于跟踪用户在互联网上的活动。Cookie通常由网站创建,以便记住用户的偏好和登录状态,
- 下面是我已经证实可用的自动备份的方法. 1、打开企业管理器->管理->sql server代理 2、新建一个作业,作业名称随便取
- def report_hook(count, block_size, total_size):... &n
- 很多网站在注册时除了需要用户填写用户名与密码之外,还会要求用户输入邮箱,而且是属于那种不填写就不能完成注册的强制型的。碰到这种情况的时候,一
- 文件:.wmv;大小:19,535KB;长度:00:26:39。 下载地址:SqlFunction_udf_Week.rar以下内容于201
- 用Python+ChatGPT批量生成论文概述做算法研究离不开阅读大量论文。从海量论文中找到需要的论文往往耗费算法团队不少的精力。ChatG