关于验证商品订单价格问题
来源:13-2 通用电商下单服务+库存高并发控制逻辑实现(上)
david_Zhu
2017-08-28
public static function createPayOrder( $member_id,$items = [],$params = []){
$total_price = 0;
$continue_cnt = 0;
foreach( $items as $_item ){
if( $_item['price'] < 0 ){
$continue_cnt += 1;
continue;
}
$total_price += $_item['price'];
}
if( $continue_cnt >= count($items) ){
return self::_err( "商品items为空~~" );
}
源代码如上,当$continue_cnt 大于1的时候,我们不是应该就认为有一个订单价格出现小于0,需要返回错误。但是$continue_cnt >= count($items)这个条件,意思是当所有的订单的价格都小于0才返回错误,这样不对吧?
写回答
2回答
-
你说的是对的,但是这个if判断没问题,你提醒了我,我们加一个 if( $continue_cnt > 0 ) 然后返回一个错误的判断
112017-08-28 -
编程浪子
2017-08-28
非常好,你的思路非常对,应该这样的,继续加油
10
相似问题