当前位置: 代码迷 >> PHP >> php计算优惠信息 求计算算法 多谢
  详细解决方案

php计算优惠信息 求计算算法 多谢

热度:177   发布时间:2012-05-20 16:03:12.0
php计算优惠信息 求计算算法 谢谢
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);
 
  相关解决方案