Menu
CoddyTech

挑战:购物车总价

本课属于 Coddy PHP 学习旅程的“逻辑与流程”单元。第 67 课,共 68 课。

challenge icon

挑战

简单

你将收到一个输入:一个表示购物车商品数组的 JSON 字符串。

输入将是以下格式的 JSON 字符串:[{"name":"Laptop","price":999.99,"quantity":1},{"name":"Mouse","price":25.50,"quantity":2},{"name":"Keyboard","price":75.00,"quantity":1}]

读取输入,并将 JSON 字符串解码为商品数组。每件商品有三个属性:name、price 和 quantity。

将每件商品的价格乘以其数量,然后把所有结果相加,计算购物车的总价。使用 array_reduce() 和自定义回调函数计算总价。

计算出总价后,按以下格式输出:

Total: $[amount]

使用 number_format() 将金额格式化为恰好 2 位小数。

输入格式:

  • 一行内容,包含一个表示购物车商品数组的 JSON 字符串,其键为 name、price 和 quantity

预期输出:一行内容,按以下格式显示总价:Total: $[amount],其中金额格式为 2 位小数

亲手试试

<?php
// 读取 JSON 输入
$input = fgets(STDIN);

// 将 JSON 字符串解码为数组
$items = (array)json_decode($input, true);

// TODO: 在下方编写代码,使用 array_reduce() 计算总计


// 输出结果
echo "Total: $" . number_format($total, 2);
?>

逻辑与流程中的所有课

自己练习: PHP 在线编译器