我的购物车将json_encode数组中的订单输入到数据库中。是否有可能从这个数组中提取总价格..如果有4个产品我想提取所有五个价格的总和?
以下是数组的示例
{"73":{
"title":"Test",
"description":"",
"quantity":1,
"image":"",
"price":90},
"66":{
"title":"Title",
"description":"",
"quantity":1,
"image":"",
"price":80},
"shipping":{"
quantity":1,
"image":"",
"description":"",
"title":"Free Delivery",
"price":0
}
}
我想提取所有price
字段,并在页面上显示它们的总和。
编辑:这是我得到的数组
Array
(
[7] => Array
(
[title] => Test
[description] => Test
[quantity] => 1
[image] =>
[price] => 2
)
[6] => Array
(
[title] => Test
[description] => Test
[quantity] => 1
[image] =>
[price] => 12
)
[shipping] => Array
(
[quantity] => 1
[image] =>
[description] =>
[title] =>
[price] => 51
)
)
答案 0 :(得分:1)
这是 JSON 。首先需要将其转换为数组。
然后,你 可以使用数组函数array_column() 来检索所有“价格” 值并应用array_sum()来计算此数组的总价格。
// Assuming $data is the JSON.
$data = json_decode($data, true);
$price = array_sum(array_column($data, "price"));
答案 1 :(得分:1)
首先,您的json数据无效
但我给出了步骤。如何总结价格
1)首先将json解码为数组
2)然后通过array_column函数
提取price列3)然后使用array_sum函数
对其求和<?php $data =json_decode($json_variable,true);echo "<pre/>";print_r($data);
$price = array_column($data, "price");
echo $total_amount = array_sum($price);