У меня есть кусок кода, который работал отлично, а затем просто остановился:
$miccpl = $micbudgetspent / $micleads;
echo $micbudgetspent . " / " . $micleads . " = " . $miccpl;
if ($micleads != NULL)
{
echo "$ " . round($miccpl, 2);
}
else
{
echo "TBA";
}
Это результат:
2 000/49 = 0,040816326530612 $ 0,04
Почему это дает мне 0,0408? Когда это должно быть 40.80
Видимо значение $micbudgetspent
это строка '2 000'
,
В заявлении:
$miccpl = $micbudgetspent / $micleads;
$micbugdetspent
является преобразован в число (это операнд оператор деления /
).
Из-за места после 2
конверсия производит 2
в качестве значения, которое будет использоваться в дальнейшем в выражении и значение 2 / 49
является 0.040816326530612
Читайте о преобразование из строк в числа в PHP.
Других решений пока нет …