首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在同一级别上解析具有不同键的JSON数组

问如何在同一级别上解析具有不同键的JSON数组
EN

Stack Overflow用户
提问于 2014-10-15 23:36:02
回答 1查看 97关注 0票数 0

我有数组,我需要得到数量的总和*价格。但是第三层的数组键是不同的。

我使用这个PHP代码,但是我只能接受第一项‘506-p1-8_p2-p3-’的价格和数量。

代码语言:javascript
复制
$quantity = $elements['1af7e792-bcff-4a6c-9bdb-dd5023b0251a']['items']['506-p1-8_p2-_p3-'][quantity];
$price = $elements['1af7e792-bcff-4a6c-9bdb-dd5023b0251a']['items']['506-p1-8_p2-_p3-'][price];
$summ = $price*$quantity;

如何解析所有级别以获得Summ =(价格*数量)

感谢所有能帮助我的人

代码语言:javascript
复制
Array
(
    [1af7e792-bcff-4a6c-9bdb-dd5023b0251a] => Array
        (
            [is_advance] => 1
            [items] => Array
                (
                    [506-p1-8_p2-_p3-] => Array
                        (
                            [hash] => 506-p1-8_p2-_p3-
                            [sku] => 501
                            [itemId] => 506
                            [quantity] => 6
                            [price] => 80.75
                            [currency] => UAH
                            [priceDesc] => 
                            [priceParams] => Array
                                (
                                    [u0420u0430u0437u043cu0435u0440] => 8
                                )
                            [name] => qwerty
                        )
                    [498-p1-6_p2-_p3-] => Array
                        (
                            [hash] => 498-p1-6_p2-_p3-
                            [sku] => 498
                            [itemId] => 498
                            [quantity] => 5
                            [price] => 500
                            [currency] => UAH
                            [priceDesc] => 
                            [priceParams] => Array
                                (
                                    [u0420u0430u0437u043cu0435u0440] => 6
                                )
                            [name] => qwerty
                        )
                )
        )
)
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2014-10-15 23:43:44

首先很难判断数组是如何生成的。因此,从您已经发布的代码中,这应该可以总结数组中包含的每一项的总数。

代码语言:javascript
复制
$items = $elements['1af7e792-bcff-4a6c-9bdb-dd5023b0251a']['items'];
$sum = 0;
foreach($items as $item) {
    $sum += $item['quantity'] * $item['price'];
}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26393882

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档