比较PHP中的两个多维数组以求和

我有两个数组:

阵列A:

$rates = array(
    'apple' => array(
        'red' => array(
            'rate' => 1.19,
            'resume' => 'This is a red apple.'
        ),
        'green' => array(
            'rate' => 0.99,
            'resume' => 'This is a green apple.'
        ),
        'yellow' => array(
            'rate' => 0.89,
            'resume' => 'This is a yellow apple.'
        ),
    )
);

阵列B:

$cart = array(
    'apple' => array(
        '0'  => red,
        '1'  => green
    )
);

数组B是购物车之一,我需要从数组A获取费率。

所以:

  • 苹果>红色> 1.19
  • 苹果>绿色> 0.99

总计应为2.18


这是我尝试的:

$total = 0;
foreach ($cart as $key => $arr) {
    if (isset($rates[$key])) {
        foreach ($arr as $value) {
            $total += $rates[$key]['rate'][$value] ?? 0;
        }
    }
}
echo $total;

但这是行不通的。https://3v4l.org/vsEvA

我想念的是什么吗?

非常感谢您的帮助。

安德烈亚斯

您可以将rates数组与cart数组中的信息嵌套在一起,然后对其求和。

$sum =0;
foreach($cart as $prod => $sub){
    foreach($sub as $color){
        $sum += $rates[$prod][$color]['rate'];
    }
}

echo $sum;

https://3v4l.org/C6U3f

编辑:我相信您在代码中只会错误地估计值和值。
https://3v4l.org/pj3WL

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

来自分类Dev

如何在PHP中加入两个多维数组

来自分类Dev

PHP中两个多维数组的交集

来自分类Dev

比较PHP中的两个数组

来自分类Dev

如何从PHP的多维数组中获取两个随机条目

来自分类Dev

对PHP中两个关联多维数组的值求和

来自分类Dev

基于匹配其他两个值(php)的多维关联数组中的一个值求和

来自分类Dev

Foreach中的两个多维数组

来自分类Dev

匹配Javascript中的两个多维数组

来自分类Dev

比较PHP中的两个JSON

来自分类Dev

如何获得PHP中两个多维数组的差异?

来自分类Dev

以求和条件联接两个表

来自分类Dev

在numpy中连接两个多维数组

来自分类Dev

PHP从mysql两个表生成多维数组

来自分类Dev

在vuejs或javascript中合并两个多维数组

来自分类Dev

添加两个多维PHP关联数组

来自分类Dev

PHP将两个多维数组的元素求和

来自分类Dev

如何在PHP中加入两个多维数组

来自分类Dev

PHP-查找比较两个多维数组的值

来自分类Dev

通过两个以上字段对php中的多维数组进行排序

来自分类Dev

PHP合并两个关联的多维数组

来自分类Dev

对PHP中两个关联多维数组的值求和

来自分类Dev

Foreach中的两个多维数组

来自分类Dev

PHP组数组由两个键求和

来自分类Dev

PHP中的多维数组比较

来自分类Dev

PHP从mysql两个表生成多维数组

来自分类Dev

比较PHP中的两个整数

来自分类Dev

PHP比较两个多维数组

来自分类Dev

PHP比较或搜索两个不同数组的数组

来自分类Dev

附加两个多维数组,然后在 PHP 中按时间戳值排序