php教程

超轻量级php框架startmvc

PHP将二维数组某一个字段相同的数组合并起来的方法

更新时间:2020-03-07 23:55:16 作者:startmvc
本文实例讲述了PHP将二维数组某一个字段相同的数组合并起来的方法。分享给大家供大家参

本文实例讲述了PHP将二维数组某一个字段相同的数组合并起来的方法。分享给大家供大家参考,具体如下:

例子:


array(3) {
 [0]=>
 array(16) {
 ["id"]=>
 string(2) "42"
 ["uid"]=>
 string(2) "14"
 ["euid"]=>
 string(2) "56"
 ["did"]=>
 string(1) "1"
 ["nid"]=>
 string(1) "0"
 ["phonetime"]=>
 string(10) "1443927600"
 ["createtime"]=>
 string(10) "1443880619"
 ["type"]=>
 string(1) "3"
 ["status"]=>
 string(1) "0"
 ["atype"]=>
 string(1) "1"
 ["mtype"]=>
 string(1) "2"
 ["endtime"]=>
 string(1) "0"
 ["time"]=>
 string(10) "10月04日"
 ["date"]=>
 string(6) "周日"
 ["uname"]=>
 NULL
 ["album"]=>
 string(0) ""
 }
 [1]=>
 array(16) {
 ["id"]=>
 string(2) "40"
 ["uid"]=>
 string(2) "14"
 ["euid"]=>
 string(2) "56"
 ["did"]=>
 string(1) "1"
 ["nid"]=>
 string(1) "0"
 ["phonetime"]=>
 string(10) "1444359600"
 ["createtime"]=>
 string(10) "1444268595"
 ["type"]=>
 string(1) "3"
 ["status"]=>
 string(1) "0"
 ["atype"]=>
 string(1) "1"
 ["mtype"]=>
 string(1) "2"
 ["endtime"]=>
 string(1) "0"
 ["time"]=>
 string(10) "10月09日"
 ["date"]=>
 string(6) "周五"
 ["uname"]=>
 NULL
 ["album"]=>
 string(0) ""
 }
 [2]=>
 array(16) {
 ["id"]=>
 string(2) "43"
 ["uid"]=>
 string(1) "2"
 ["euid"]=>
 string(2) "56"
 ["did"]=>
 string(1) "1"
 ["nid"]=>
 string(1) "0"
 ["phonetime"]=>
 string(10) "1444359620"
 ["createtime"]=>
 string(10) "1444268595"
 ["type"]=>
 string(1) "3"
 ["status"]=>
 string(1) "0"
 ["atype"]=>
 string(1) "1"
 ["mtype"]=>
 string(1) "2"
 ["endtime"]=>
 string(1) "0"
 ["time"]=>
 string(10) "10月09日"
 ["date"]=>
 string(6) "周五"
 ["uname"]=>
 NULL
 ["album"]=>
 string(0) ""
 }
}

现在想要对这个二维数组下的元素,time相同的合并到同一数组下。想要的效果为:


array(2) {
 ["10月04日"]=>
 array(1) {
 [0]=>
 array(16) {
 ["id"]=>
 string(2) "42"
 ["uid"]=>
 string(2) "14"
 ["euid"]=>
 string(2) "56"
 ["did"]=>
 string(1) "1"
 ["nid"]=>
 string(1) "0"
 ["phonetime"]=>
 string(10) "1443927600"
 ["createtime"]=>
 string(10) "1443880619"
 ["type"]=>
 string(1) "3"
 ["status"]=>
 string(1) "0"
 ["atype"]=>
 string(1) "1"
 ["mtype"]=>
 string(1) "2"
 ["endtime"]=>
 string(1) "0"
 ["time"]=>
 string(10) "10月04日"
 ["date"]=>
 string(6) "周日"
 ["uname"]=>
 NULL
 ["album"]=>
 string(0) ""
 }
 }
 ["10月09日"]=>
 array(2) {
 [0]=>
 array(16) {
 ["id"]=>
 string(2) "40"
 ["uid"]=>
 string(2) "14"
 ["euid"]=>
 string(2) "56"
 ["did"]=>
 string(1) "1"
 ["nid"]=>
 string(1) "0"
 ["phonetime"]=>
 string(10) "1444359600"
 ["createtime"]=>
 string(10) "1444268595"
 ["type"]=>
 string(1) "3"
 ["status"]=>
 string(1) "0"
 ["atype"]=>
 string(1) "1"
 ["mtype"]=>
 string(1) "2"
 ["endtime"]=>
 string(1) "0"
 ["time"]=>
 string(10) "10月09日"
 ["date"]=>
 string(6) "周五"
 ["uname"]=>
 NULL
 ["album"]=>
 string(0) ""
 }
 [1]=>
 array(16) {
 ["id"]=>
 string(2) "43"
 ["uid"]=>
 string(1) "2"
 ["euid"]=>
 string(2) "56"
 ["did"]=>
 string(1) "1"
 ["nid"]=>
 string(1) "0"
 ["phonetime"]=>
 string(10) "1444359620"
 ["createtime"]=>
 string(10) "1444268595"
 ["type"]=>
 string(1) "3"
 ["status"]=>
 string(1) "0"
 ["atype"]=>
 string(1) "1"
 ["mtype"]=>
 string(1) "2"
 ["endtime"]=>
 string(1) "0"
 ["time"]=>
 string(10) "10月09日"
 ["date"]=>
 string(6) "周五"
 ["uname"]=>
 NULL
 ["album"]=>
 string(0) ""
 }
 }
}

那么。。。代码很简单,没有想象的那么复杂,想要的结果是个三维数组

$result 为原二维数组


$res = array(); //想要的结果
foreach ($result as $k => $v) {
 $res[$v['time']][] = $v;
}

PHP 二维数组 数组合并