Куда мне добавить int $ decimals = 0?

Мне нужно, чтобы это напечатало число с двумя десятичными точками, я думаю, что я использую этот кусок кода int $decimals = 0 но я не знаю, где мне нужно добавить это.

Вот код, который у меня есть:

<?php
$tempPrice = str_replace(',',"", $price); //gets rid of ","$tempPrice = substr($tempPrice,2); //removes currency from the front
$tempPrice = floatval($tempPrice); //converts to double from string

if($tempPrice > 1000)
{
echo '£' . round(($tempPrice*0.038), 2) . ' per month';
}
else
{
echo 'Lease to buy price not available on this product';
}
?>

Спасибо

0

Решение

Вы можете использовать функцию money_format () php. http://php.net/money_format

например в вашем случае

<?php
$tempPrice = str_replace(',',"", $price); //gets rid of ","$tempPrice = substr($tempPrice,2); //removes currency from the front
$tempPrice = floatval($tempPrice); //converts to double from string
// set international format for the en_GB locale
setlocale(LC_MONETARY, 'en_GB');
if($tempPrice > 1000)
{
echo money_format('%i', $tempPrice ) . " per month";// output->"GBP 1,234.56 per month"}
else
{
echo 'Lease to buy price not available on this product';
}
?>

кроме того, вы можете просто использовать php number_format () http://php.net/number_format на $ tempPrice

echo "£ ". number_format($tempPrice ) . " per month";

по умолчанию number_format () используется английская запись. Вы можете установить собственное количество десятичных знаков, разделитель десятичных знаков и разделитель тысяч

echo "£ ". number_format($tempPrice, 2, ".", "," ) . " per month"; // for $tempPrice=1203.52 output will be "£ 1,203.56 per month"
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]