Ваши целочисленные переменные имеют тип int
Если вы добавите два типа int
, результат неизбежно будет целочисленным.
$intOne = 1;
$intTwo = 2;
$result = $intOne + $intTwo; // = (int)3
Вы можете легко изменить тип своего результата, но это не обязательно хорошо, если вы сохраните int в своей переменной...
$floatResult = (float) $result; // (float)3
Кроме того, если вы не знаете тип вашей переменной, вы можете использовать функцию 'floatval' (официальный документ здесь) вот так:
$floatOne = floatval('3.14'); // (float)3.14
$floatTwo = floatval("3.141 is a Pi number"); // (float)3.14
В этом случае, если вы добавите два типа flaot, результатом будет float two:
$result = $floatOne + floatTwo; // (float)6.281
Передовой опыт заключается в сохранении правильного типа в вашей переменной и в вашей базе данных (прочитайте это для получения дополнительной информации о типах и производительности)
если вы хотите просто показывать десятичные знаки после вашего целочисленного типа, вы можете использовать функцию number_format()
(официальная документация здесь) вот так:
$decimalResult = number_format($floatResult, 4);
echo $decimalResult; // Show '3.0000' ^ Number of decimals
Надеюсь я вам помог ;)
28.12.2017