我正在组装一个购物车,我将购物车数据保存在一个数组中,数组内部是一个结构,用于保存各个产品信息。我需要获取结构中totalprice列的总和,请参见下面的转储,我已经尝试过<cfset carTotal = ArraySum(session.mycart[ "totalPrice" ])>
但这会产生错误,“值totalprice无法转换为数字”?这是因为我在结构中使用arraysum吗?
任何帮助,将不胜感激,谢谢。
最佳答案
如果mycart
是一个Query对象,它将是一个简单的ArraySum(mycart.totalPrice)
由于它是一个结构数组,因此您必须自己对其进行循环,这仍然很容易:
<cfset sum = 0>
<cfloop array="#session.mycart#" index="item">
<cfset sum += item.totalPrice>
</cfloop>
<cfdump var="#sum#">
当需要全精度时,请不要忘记使用
PrecisionEvaluate()
。