Почему это вывод 87.5, а не 87.50?
87.5
87.50
<?php $quantity = 25; switch ($quantity) { case ($quantity <= 50): $price = 3.50; break; case ($quantity <= 100): $price = 3.00; break; default: break; } echo bcmul($price, $quantity, 2); // 87.5 ?>
Это округление 87,50, поскольку 87,5 будет таким же.Чтобы исправить, вам нужно:
number_format("87.50",2);
Используйте number_format() вместо bcmul()
number_format()
bcmul()
echo number_format(bcmul($price, $quantity, 2), 2, '.'); // forces to output always 2 diget after .
Математически 87,5 - 87,50. Если вам нужна дополнительная нумерация, вы можете использовать number_format или money_format для отображения дополнительных 0
number_format
money_format