php bir değerden bir yüzdesi çıkarılarak

4 Cevap

Im bir kupon kodu işlevine benzer bir şey yazma, hem de set miktarı kodları, yanı sıra yüzde miktarda idare edebilmek istiyorum.

Aşağıdaki gibi benim kod;

$amount = "25"; // amount of discount
$percent = "yes"; // whether coupon is (yes) a percentage, or (no) a flat amount

if($percent == "yes"){
$newprice = ???????; // subtract $amount % of $price, from $price
}else{
$newprice = $price - $amount; // if not a percentage, subtract from price outright
}

Eğer bu bir çözüm arıyorsanız okumak ama id aynı sorunla karşılaşabilir başkalarına yardımcı olmak için de burada yayınlamak düşündüm Im google arama.

4 Cevap

Bu nasıl?

$newprice = $price * ((100-$amount) / 100);

Ben gitmek istiyorum

$newprice = $price - ($price * ($amount/100))

Sadece istediğiniz yüzde onluk ile çarpabilirsiniz bir dizi bir yüzdesini almak için. Eğer% 25 olmak kapalı bir şey istiyorsanız bunun% 75'i orijinal fiyat maliyet istiyorum çünkü Örneğin, 0,75 ile çarpın. Örnek için bunu uygulamak için gibi bir şey yapmak isterdim:

if($percent == "yes"){
    $newprice = ($price * ((100-$amount) / 100)); // subtract $amount % of $price, from $price
}else{
    $newprice = $price - $amount; // if not a percentage, subtract from price outright
}

Bu ne yapar:

  1. Bize orijinal fiyatının yüzdesi vermek için 100 ila yüzde indirim çıkarın.
  2. Ondalık (örn. 0.75) bize vermek için bu sayı 100 ile bölün.
  3. yeni fiyat almak için yukarıda hesaplanan ondalık tarafından orijinal fiyat çarpın.

Temel matematik ek olarak, ben de size 2 ondalık basamak olması sonucu zorlamak için round() kullanarak düşünün öneririm.

$newprice = round($price * ((100-$amount) / 100), 2);

Bu şekilde,% 25 indirimli 24,99 dolarlık fiyatı daha sonra 18,74 yuvarlanır, hangi 18,7425 üretecek