您现在的位置是:首页 > PHP > 网站首页PHP

风三郎 2021-08-26 17:42:41 793人次围观
风三郎   Mysql   Thinkphp   php  
简介 最近在做一个项目 需要根据类型分一次组,然后在类型下面又要根据一个字段在分一次组,之前本来想的是数据库查询两次 第一次先根据类型查询出来 然后在循环两种类型 再次进行分组 但是数据量过大很影响 ,于是乎就想先分一次组然后第二次分组交个php来处理

最近在做一个项目 需要根据类型分一次组,然后在类型下面又要根据一个字段在分一次组,之前本来想的是数据库查询两次 第一次先根据类型查询出来 然后在循环两种类型 再次进行分组 但是数据量过大很影响 ,于是乎就想先分一次组然后第二次分组交个php来处理

下面废话不多少直接上代码

 

/**
 * @param $arr 原来的数组
 * @param $key 要分的数组名称
 * @return arrayPHP实现二维数组group 分组的方法
 */
function array_group_by($arr, $key){
    $grouped = array();
    foreach ($arr as $value) {
        $grouped[$value[$key]][] = $value;
    }
    if (func_num_args() > 2) {
        $args = func_get_args();
        foreach ($grouped as $key => $value) {
            $parms = array_merge($value, array_slice($args, 2, func_num_args()));
            $grouped[$key] = call_user_func_array('array_group_by', $parms);
        }
    }
    return $grouped;
}

 

文章评论

来说点儿什么吧...

评论内容:

客服在线

服务时间

周一至周日 08:00-22:00

登录与注册