transactionDetails as $transaction_detail) { $unitPrice = bcdiv((string)$transaction_detail->price, (string)$currencyRate, 5); $itemTotal = bcmul($unitPrice, (string)$transaction_detail->quantity, 5); $subtotal = bcadd($subtotal, $itemTotal, 5); } return $subtotal; } public static function getVoucherDiscount($voucher_redemption) { return $voucher_redemption ? bcmul((string)$voucher_redemption->value, "-1", 2) : "0"; } public static function roundUp($number, $decimals) { $factor = pow(10, $decimals); if ($number > 0) { return ceil($number * $factor) / $factor; } else { return floor($number * $factor) / $factor; } } }