【发布时间】:2015-12-16 11:39:34
【问题描述】:
我已经在这方面工作了几天了,但我无法弄清楚我做错了什么。如果有人能提供一些建议或解决方案,将不胜感激。
对.... 我们有一个简单的 sql 脚本,它根据会话在购物车中搜索购物车中的产品列表。
$sqlCommand = "SELECT * FROM shoppingcart WHERE sessionid ='$sessionid' ORDER BY id DESC";
$query = mysqli_query($connection, $sqlCommand) or die (mysqli_error());
$CartList1 = '';
while ($row = mysqli_fetch_array($query)) {
$custquantity1 = $row["quantity"];
$custprice1 = $row["price"];
$calcustprice1 = $custprice1 * $custquantity1;
$CartList1 .= '' .$calcustprice1. ',';
}
mysqli_free_result($query);
上面所做的是收集价格并按数量计算。这一点效果很好。
接下来我们要做的是将所有这些值添加为“购物车总价”。
然后我们修剪尾随逗号并组装成一个数组。 这不像将它们收集到一个键中那样按预期工作?
我们要问的是有没有一种解决方案或更简单的方法可以将 $CartList1 的输出相加?
$trimmedarray = rtrim($CartList1, ',');
$a = array($trimmedarray);
print_r($a);
输出结果
Array ( [0] => 6.99,41.93 )
所以本质上我们想要将 $array[0] 中的所有数值相加。希望我已经正确解释了这一点,希望上面的代码不会混入消息中,请记住我是新来的堆栈溢出。
如果有人知道我如何轻松解决这个问题,请提前非常感谢。
【问题讨论】:
-
遍历数组 $a 并添加所有值就是你在说什么?
-
某种...由于某种原因,它将所有值放在一个键中,因此不是 $a[0] =>6.99 和 $a[1] => 41.99 等等在 $a[0] 中,否则我可能已经可以使用 array_sum($a) 或者说实话我有点困惑