php教程

超轻量级php框架startmvc

php数组实现根据某个键值将相同键值合并生成新二维数组的方法

更新时间:2020-03-19 13:58:25 作者:startmvc
本文实例讲述了php数组实现根据某个键值将相同键值合并生成新二维数组的方法。分享给大

本文实例讲述了php数组实现根据某个键值将相同键值合并生成新二维数组的方法。分享给大家供大家参考,具体如下:

源数据:


$infos = array(
 array(
 'a' => 36,
 'b' => 'xa',
 'c' => '2015-08-28 00:00:00',
 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
 ),
 array(
 'a' => 3,
 'b' => 'vd',
 'c' => '2015-08-20 00:00:00',
 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
 ),
 array(
 'a' => 6,
 'b' => 'wwe',
 'c' => '2015-08-28 00:00:00',
 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
 ),
 array(
 'a' => 36,
 'b' => 'se',
 'c' => '2015-08-28 00:00:00',
 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
 ),
 array(
 'a' => 6,
 'b' => 'aw',
 'c' => '2015-08-28 00:00:00',
 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
 ),
 array(
 'a' => 36,
 'b' => 'bv',
 'c' => '2015-08-28 00:00:00',
 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
 ),
 array(
 'a' => 12,
 'b' => 'xx',
 'c' => '2015-08-27 00:00:00',
 'd' => '2015/08/438488a00b3219929282e3652061c2e3.png'
 )
);

处理要求:将数组中a相同的二维数组合并到一个数组中,生成一个新的数组

代码:


<?php
 $result= array();
 foreach ($infos as $key => $info) {
 $result[$info['a']][] = $info;
 }
 print_r($result);

输出:


Array
(
 [36] => Array
 (
 [0] => Array
 (
 [a] => 36
 [b] => xa
 [c] => 2015-08-28 00:00:00
 [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
 )
 [1] => Array
 (
 [a] => 36
 [b] => se
 [c] => 2015-08-28 00:00:00
 [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
 )
 [2] => Array
 (
 [a] => 36
 [b] => bv
 [c] => 2015-08-28 00:00:00
 [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
 )
 )
 [3] => Array
 (
 [0] => Array
 (
 [a] => 3
 [b] => vd
 [c] => 2015-08-20 00:00:00
 [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
 )
 )
 [6] => Array
 (
 [0] => Array
 (
 [a] => 6
 [b] => wwe
 [c] => 2015-08-28 00:00:00
 [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
 )
 [1] => Array
 (
 [a] => 6
 [b] => aw
 [c] => 2015-08-28 00:00:00
 [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
 )
 )
 [12] => Array
 (
 [0] => Array
 (
 [a] => 12
 [b] => xx
 [c] => 2015-08-27 00:00:00
 [d] => 2015/08/438488a00b3219929282e3652061c2e3.png
 )
 )
)

php 数组 键值 合并 二维数组