PHP根据数组的值分组

PHP根据数组的值分组,php array中没有自带这个函数但是很常用,今天写了出来记录一下。

代码:

$_array = array(
        array(1,11,‘2016-05-18‘),
        array(2,11,‘2016-05-18‘),
        array(3,22,‘2016-05-18‘),
        array(4,22,‘2016-05-18‘),
        array(5,33,‘2016-05-19‘),
        array(6,33,‘2016-05-19‘),
        array(7,44,‘2016-05-19‘),
        array(8,44,‘2016-05-19‘),
        array(9,55,‘2016-05-20‘),
        array(10,55,‘2016-05-20‘),
    );
    var_dump(array_val_chunk($_array));

function array_val_chunk($array){
        $result = [];
        foreach ($array as $key => $value) {
            $result[$value[1].$value[2]][] = $value;
        }
        $ret = [];
        //这里把简直转成了数字的,方便同意处理
        foreach ($result as $key => $value) {
            array_push($ret, $value);
        }
        return $ret;
    }

时间: 2024-11-14 19:13:20

PHP根据数组的值分组的相关文章

PHP 数组的值插入

曾今写过一个坑货的数组方法 function array_insert($myarray,$value,$position=0) {    $fore=($position==0)?array():array_splice($myarray,0,$position);    $fore[]=$value;    $ret=array_merge($fore,$myarray);    return $ret; } 此函数用法 返回一个数组,内容是在$myarray数组的$position处插入$

PHP去掉数组重复值二种方法实例

PHP两种去掉数组重复值的方法,分别使用foreach方法和array_unique方法. 去除一个数组中的重复值,可以使用foreach方法,也可以使用array_unique方法. <?php $arrF = array(); $arrS = array(); $intTotal = 100; $intRand = 10; for($i=0; $i < $intTotal; $i++) { $arrF[] = rand(1, $intRand); $arrS[] = rand(1, $in

implode() — 将一个一维数组的值转化为字符串

语法: string implode ( string $glue , array $pieces ) string implode ( array $pieces ) 用 glue 将一维数组的值连接为一个字符串. 参数 glue: 默认为空的字符串. pieces: 你想要转换的数组. 返回值:返回一个字符串,其内容为由 glue 分割开的数组的值. Note:因为历史原因,implode() 可以接收两种参数顺序,但是 explode() 不行.不过按文档中的顺序可以避免混淆. Examp

交换两个数组的值

★将数组A中的内容和数组B中的内容进行交换.(数组一样大) #include<stdio.h> int main() { int a[10]; int b[10]; int c[10]; int i = 0; printf("请输入第一个数组中的五个数值:\n"); for (i = 0; i < 5; i++) { scanf("%d", &a[i]); } printf("\n"); printf("请输入

php数组键值排序

 代码片段如下:         $data = $villageDb->alias('a')->join('br_esf_village_expand as b on a.villageId=b.villageId', 'LEFT')->where($where)->limit($Page->firstRow . ',' . $Page->listRows)->select();         $houseDb=D("House");   

emacs下gdb打印 变量 和 数组 的值

一.程序变量 查看文件中某变量的值: file::variable function::variable 可以通过这种形式指定你所想查看的变量,是哪个文件中的或是哪个函数中的.例如,查看文件f2.c中的全局变量x的值: gdb) p 'f2.c'::x 二.查看数组的值 有时候,你需要查看一段连续的内存空间的值.比如数组的一段,或是动态分配的数据的大小.你可以使用GDB的"@"操 作符,"@"的左边是第一个内存的地址的值,"@"的右边则你你想查看

获取到数组的值

/* * 获取到数组的值 * */$arr = array('zs'=>'103'); $count = count($arr); for ($i=0;$i<$count;$i++){ list($k,$v) = each($arr);} for ($i=0;$i<$count;$i++){ $v = current($arr); $k = key($arr);} echo reset ($arr);//直接取值 while (list($key, $value) = each ($ar

php计算数组相同值出现次数的代码(array_count_values)

php计算数组相同值出现次数,可以使用php自带函数array_count_values : 说明 array array_count_values ( array $input )array_count_values() 返回一个数组,该数组用 input 数组中的值作为键名,该值在 input 数组中出现的次数作为值. array_count_values() 例子 代码如下: <?php $array = array(1, "hello", 1, "world&q

JS中直接从java后台获得对象的值(数组的值)

这里举得例子是:JS直接从后台Contorller中(SpringMVC中的model中)获得数值的值 Contorller 此处将 talentIntegralRecordsDay talentIntegralRecordsIntegral 两个数组用JSON.toJSONString()封装. @SuppressWarnings("deprecation") @RequestMapping("/integralParadise") public ModelAnd