- PHP code
$arr=array('item_info_list' => Array ( '0' => Array ( 'sku_id' => '1003244250', 'ware_id' => '1001418658', 'jd_price' => '269.00', 'sku_name' => '百事PEPSI 男式板鞋 2012新款夏季透气舒适男款经典休闲板鞋 猎人绿 40', 'outer_sku_id' => '40872121106', 'product_no' => '872121101 872121102 872121104 872121105', 'gift_point' => '0', 'item_total' => '1', ) , '1' => Array ( 'sku_id' => '1003244255', 'ware_id' => '1001418658', 'jd_price' => '269.00', 'sku_name' => '百事PEPSI 男式板鞋 2012新款夏季透气舒适男款经典休闲板鞋 暗红 39', 'outer_sku_id' => '39872121105', 'product_no' => '872121101 872121102 872121104 872121105', 'gift_point' => '0', 'item_total' => '1', ) ) , 'coupon_detail_list' => Array ( '0' => Array ( 'order_id' => '213978711', 'sku_id' => '1003244250', 'coupon_type' => '30-单品促销优惠', 'coupon_price' => '170.00', ) , '1' => Array ( 'order_id' => '213978711', 'sku_id' => '1003244255', 'coupon_type' => '30-单品促销优惠', 'coupon_price' => '170.00', ) ) )
求计算实际价格的算法 有时候'item_info_list' 子数组里只有一个商品 'coupon_detail_list' 子数组里只有一个优惠信息
而有时候候'item_info_list' 子数组里只有一个商品 'coupon_detail_list' 子数组里没有优惠信息,有时候'item_info_list' 子数组里只有两个商品 'coupon_detail_list' 子数组里只有一个优惠信息,有时候'item_info_list' 子数组里只有两个商品 'coupon_detail_list' 子数组里有两个优惠信息, 求大神指导 !
------解决方案--------------------
你最后想要什么结果。
------解决方案--------------------
//先预处理一下
foreach($arr['item_info_list'] as $v) $item_info_list[$v['sku_id']] = $v;
foreach($arr['coupon_detail_list'] as $v) $coupon_detail_list[$v['sku_id']] = $v;
foreach($item_info_list as $k=>$v)
echo "sku_id:$k price:" . isset($coupon_detail_list[$k]) ? $coupon_detail_list[$k]['coupon_price'] : $v['jd_price'], "<br />\n";
------解决方案--------------------
- PHP code
foreach ($arr['item_info_list'] as $key=>$val) { if(isset($arr['coupon_detail_list'][$key])) $arr['item_info_list'][$key] = array_merge($val, $arr['coupon_detail_list'][$key]); } print_r($arr);