PHP如何高效地对根据键值对数组元素进行归类?

查看:286
本文介绍了PHP如何高效地对根据键值对数组元素进行归类?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

如以下代码:

    $arr = [
        0 => [
            "category" => "red",
            "price" => 95
        ],
        1 => [
            "category" => "blue",
            "price" => 85
        ],    
        2 => [
            "category" => "red",
            "price" => 75
        ]
    ];
    
    //我希望将以上其归类为如下数组
    
    [
        "red" => [
            0 => [
                "category" => "red",
                "price" => 95
            ],            
            1 => [
                "category" => "red",
                "price" => 75
            ]        
        ],
        "blue" => [
            0 => [
                "category" => "blue",
                "price" => 85
            ]        
        ]
    ]

希望大神能给个思路,谢谢

解决方案

<?php

$arr = [
        0 => [
            "category" => "red",
            "price" => 95
        ],
        1 => [
            "category" => "blue",
            "price" => 85
        ],    
        2 => [
            "category" => "red",
            "price" => 75
        ]
    ];

$result = array();
foreach($arr as $k=>$v){
    //var_dump($v);
    //echo $v['price'];
    $key = $v['category'];
    if(!array_key_exists($key, $result)) $result[$key] =array();
    $result[$key][] = $v;

}

var_dump($result);

这篇关于PHP如何高效地对根据键值对数组元素进行归类?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆