如何在多维数组中与其他数组共享元素的数组中获取值



我有这个数组,每个键中都有其他数组,它在每个子数组中都有product_id键,它们的值是未知的。如何获得共享相同product_id值的item_quantity键的总价值?

Array ( 
        [0] => Array ([product_id] => 17 [item_quantity] => 4) 
        [1] => Array ([product_id] => 17 [item_quantity] => 4)
        [2] => Array ([product_id] => 18 [item_quantity] => 6) 
    )

我不知道该使用哪个php函数,但一般来说,我会"在子数组中的product_id相同的数组的子数组中获取所有item_quantity"。

编辑:我想我错过了,我还想得到所有product_iditem_quantity的总数,这意味着我不仅想得到17的总数,还想得到18的总数。

我想你是在找这样的东西

$sum = array();
foreach ($array as $value) {
    if( !isset($sum[$value["product_id"]]) )
        $sum[$value["product_id"]] = 0;
    $sum[$value["product_id"]] += $value["item_quantity"];
}
print_r($sum);

在您的示例中,输出将是

Array ( [17] => 8 [18] => 6 )

product_id相同的item_quantity将在$sum数组中以相同的偏移量添加。

相关内容

  • 没有找到相关文章

最新更新