我有两个阵列,1个客户付款和2个服务阵列,我需要将客户付款分配给客户获得的每项服务。
$customer_payments = array(100,75,125,50);
$service_prices = array(150,90);
根据上述数组,第一个服务价格150需要先从100开始付款,然后从75开始付款,这样剩下的付款将是25,125,50而从第二个服务价格为90,付款将按以下方式分发:25(从25)和65(从125),客户将离开110(60和50)帐户,如果客户将购买任何其他服务,新服务将分配付款从60,50。
到目前为止,我已经做到了这一点,但它无法正常工作:
foreach($customer_payments as $payment){
foreach($service_prices as $price){
if($price >= $payment){
$remaining_price = $price - $payment;
$payment_left = 0;
echo 'service price: '.$price.'<br>';
echo 'payment: '.$payment.'<br>';
echo 'outstanding: '.$remaining_price.'<br>';
echo 'payment left: '.$payment_left.'<br><br>';
} else {
$remaining_price = 0;
$payment_left = $payment - $price;
echo 'service price: '.$price.'<br>';
echo 'payment: '.$payment.'<br>';
echo 'outstanding: '.$remaining_price.'<br>';
echo 'payment left: '.$payment_left.'<br><br>';
}
}
}