前言

返回联系人列表,包含所有的字母,之前返回的是存在这个联系人才会返回对应的大写字母,后面更改了要求要返回所有的字母从A-Z。PHP内置的一些函数活用起来,真的很省劲!

步骤

一般这时候大家可能直接就想循环下,把26个字母插进去就行了,但是我懒啊,不想用foreach那咋办呢?直接用array_merge()函数呗!而且这个用了foreach也是要处理的,不然你的数据必定会丢失!

array_merge

我们利用的就是非数字键名会被后面的值覆盖的这个特性

创建数组

我们创建一个以A-Z为键的数组,然后使用array_merge函数来合并已经处理好数据的数组。

 $charA = ['A'=>'','B'=>'','C'=>'','D'=>'','E'=>'','F'=>'','G'=>'','H'=>'','I'=>'','J'=>'','K'=>'','L'=>'','M'=>'','N'=>'','O'=>'','P'=>'','Q'=>'','R'=>'','S'=>'','T'=>'','U'=>'','V'=>'','W'=>'','X'=>'','Y'=>'','Z'=>''];
$res = array_merge($charA, $list);

数据结果

{
"status": true,
"msg": "获取联系人列表成功",
"data": {
"A": "",
"B": "",
"C": "",
"D": "",
"E": "",
"F": "",
"G": "",
"H": [
{
"id": 1798,
"nickname": "黄东海",
"mobile": "152****7261",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B60E",
"expire": 1559750400
}
]
}
],
"I": "",
"J": "",
"K": "",
"L": [
{
"id": 1820,
"nickname": "刘雨",
"mobile": "152****7263",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B62E",
"expire": 1565539200
},
{
"licence": "豫B5B63E",
"expire": 1565539200
}
]
},
{
"id": 1823,
"nickname": "陆玲",
"mobile": "152****7266",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B65E",
"expire": 1565539200
},
{
"licence": "豫B5B66E",
"expire": 1565539200
}
]
}
],
"M": "",
"N": "",
"O": "",
"P": "",
"Q": "",
"R": "",
"S": "",
"T": [
{
"id": 1828,
"nickname": "test222",
"mobile": "199****0947",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B60E",
"expire": 1565539200
}
]
},
{
"id": 1829,
"nickname": "test333",
"mobile": "155****7671",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B62E",
"expire": 1565539200
}
]
}
],
"U": "",
"V": "",
"W": [
{
"id": 1819,
"nickname": "王根生",
"mobile": "152****7262",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B60E",
"expire": 1565539200
},
{
"licence": "豫B5B62E",
"expire": 1565539200
}
]
},
{
"id": 1821,
"nickname": "王莹莹",
"mobile": "152****7264",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B63E",
"expire": 1565539200
},
{
"licence": "豫B5B64E",
"expire": 1565539200
}
]
}
],
"X": "",
"Y": [
{
"id": 1818,
"nickname": "叶佳楠",
"mobile": "186****6957",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B60E",
"expire": 1565539200
}
]
}
],
"Z": [
{
"id": 1822,
"nickname": "张三",
"mobile": "152****7265",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B64E",
"expire": 1565539200
},
{
"licence": "豫B5B65E",
"expire": 1565539200
}
]
},
{
"id": 1824,
"nickname": "张幔",
"mobile": "152****7267",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B66E",
"expire": 1565539200
},
{
"licence": "豫B5B67E",
"expire": 1565539200
}
]
},
{
"id": 1825,
"nickname": "赵四",
"mobile": "152****7268",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B67E",
"expire": 1565539200
},
{
"licence": "豫B5B68E",
"expire": 1565539200
}
]
},
{
"id": 1826,
"nickname": "张秀芝",
"mobile": "152****7269",
"avatar": "http://cache.wangyangyang.vip/timg.jpg",
"licence": [
{
"licence": "豫B5B68E",
"expire": 1565539200
},
{
"licence": "豫B5B69E",
"expire": 1565539200
}
]
}
]
}
}

PHP——巧用PHP函数array_merge()合并数组的更多相关文章

  1. PHP中使用函数array_merge()合并数组

    如果明白数组其实就是map的话,我想你就会明白array_merge为什么要这么实现了 PHP中合并数组分成两种情况 1.如果这两个数组中有相同的字符串键名: <?php header('Con ...

  2. php中array_merge合并数组详解

    如果键名有重复,该键的键值为最后一个键名对应的值(后面的覆盖前面的).如果数组是数字索引的,则键名会以连续方式重新索引. 注释:如果仅仅向 array_merge() 函数输入了一个数组,且键名是整数 ...

  3. PHP的array_merge()合并数组

    ,4];print_r(array_merge($arr1,$arr2));返回结果:Array(    [a] => 3    [b] => 2    [0] => 4)1注释:当 ...

  4. PHP合并数组array_merge函数运算符加号与的区别

    两个的区别是:1.数组键名为数字键名时,要合并的两个数组中有同名数字KEY的时候,使用array_merge()不会覆盖掉原来的值,而使用“+”合并数组则会把最先出现的值作为最终结果返回,而把后面的数 ...

  5. 深度解析PHP数组函数array_merge

    很久之前就用到过这个函数,只不不过是简单的用用而已并没有做太深入的研究 今天在翻阅别人博客时看到了对array_merge的一些使用心得,故此自己来进行一次总结. array_merge是将一个或者多 ...

  6. php 通过array_merge()和array+array合并数组的区别和效率比较

    众所周知合并两个数组可以使用array_merge(),这是php提供的一个函数.另外还可以通过 array 的方式来合并数组,这两种直接有什么区别,哪一个的效率更高呢? array_merge() ...

  7. php数组函数-array_merge()

    array_merge()函数把两个或多个数组合并为一个数组. 如果键名有重复,该键的键值为最后一个键名对应的值.如果数组是数字 索引,则键名会以连续方式重新索引. 注:如果仅仅向array_merg ...

  8. PHP合并数组+与array_merge的区别

    http://www.phpernote.com/php-string/351.html PHP中合并两个数组可以使用+或者array_merge,但这两个还是有区别的   主要区别是当两个或者多个数 ...

  9. PHP合并数组+与array_merge的区别分析

    主要区别是两个或者多个数组中如果出现相同键名,键名分为字符串或者数字,需要注意 1)键名为数字时,array_merge()不会覆盖掉原来的值,但+合并数组则会把最先出现的值作为最终结果返回,而把后面 ...

随机推荐

  1. CPU 和内存虚拟化原理

    前面我们成功地把 KVM 跑起来了,有了些感性认识,这个对于初学者非常重要.不过还不够,我们多少得了解一些 KVM 的实现机制,这对以后的工作会有帮助. CPU 虚拟化 KVM 的虚拟化是需要 CPU ...

  2. NOJ 1116 哈罗哈的大披萨 【淡蓝】 [状压dp+各种优化]

    我只能说,珍爱生命,远离卡常数的题...感谢陈老师和蔡神,没有他们,,,我调一个星期都弄不出来,,,, 哈罗哈的大披萨 [淡蓝] 时间限制(普通/Java) : 1000 MS/ 3000 MS   ...

  3. HDU 5009 Paint Pearls(西安网络赛C题) dp+离散化+优化

    转自:http://blog.csdn.net/accelerator_/article/details/39271751 吐血ac... 11668627 2014-09-16 22:15:24 A ...

  4. MySQL 中 key, primary key ,unique key,index的区别

    一.key与primary key区别 CREATE TABLE wh_logrecord ( logrecord_id int(11) NOT NULL auto_increment, user_n ...

  5. 开始学习Objective-C

        加油!     顺便试试这MarsEdit好用不~

  6. UI小结

    第一.UIButton的定义      UIButton *button=[[UIButton buttonWithType:(UIButtonType); 能够定义的button类型有以下6种,   ...

  7. LeetCode OJ--Partition List

    http://oj.leetcode.com/problems/partition-list/ 链表的处理 #include <iostream> using namespace std; ...

  8. 如何选择 IT 技术书籍

    ★第1招:看网上评论 首先,上一些权威的图书网站,看看大伙儿的评价如何(要相信群众的眼睛是雪亮的).对于英文书籍,我一般上亚马逊网站去看看:中文书籍则上豆瓣网.这两个网站都提供星级评分,一般 > ...

  9. 接阿里云oss有感

    看API,从头细看到尾,在这个过程中一定会找到你要找的东西.

  10. PC下ubuntu查找PC串口并加入用户组

    1. 查看ttyS0隶属的组:ls -l /dev/ttyS0  //发现隶属于dialout组 输出: crw-rw---- 1 root dialout 4, 64  9月  9 08:23 /d ...