Вычисление итоговых сумм для формы
Теперь, когда вы знаете, как пользоваться операциями РНР, можно вычислить итоговую сумму и сумму налога для формы заказа компании Вована.
Для этого в нижнюю часть разрабатываемого РНР-сценария необходимо добавить следующий код:
$totalqty = 0;
$totalqty = $tireqty + $oilqty + $sparkqty;
echo "Заказано товаров: ".$totalqty."<br />";
$totalamount = 0.00;
define('TIREPRICE', 100);
define('OILPRICE', 10);
define('SPARKPRICE', 4);
$totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE;
echo "Итого: $".number_format($totalamount,2)."<br />";
$taxrate = 0.10; // местный налог с продаж составляет 10%
$totalamount = $totalamount * (1+$taxrate);
echo "Всего, включая налог с продаж: $". number_format($totalamount,2)."<br />";
После обновления страницы в окне браузера вы увидите что-то, похожее на показанное на рис. 1.5.
Как видите, в этом фрагменте кода используется несколько операций. Операции сложения (+) и умножения (*) применяются для вычисления итоговых значений, а операция конкатенации строк (.) — для подготовки вывода в окне браузера.
Кроме того, с помощью функции number format () итоговые суммы были сформатированы и представлены в виде строк с двумя десятичными разрядами. Упомянутая функция входит в состав РНР-библиотеки математических функций.
Если вы внимательно проанализируете вычисления, то, возможно, возникнет вопрос, почему для них был выбран именно такой их порядок. Например, рассмотрим следующий оператор:
$totalamount = $tireqty * TIREPRICE + $oilqty * OILPRICE + $sparkqty * SPARKPRICE;
Итог кажется правильным, но почему умножение выполнилось перед сложением? Это обусловлено приоритетом операций, т.е. порядком их выполнения.
|