my function is as follows:
static function applyPrecision($vals) {
$originalNumber = $vals['reading'];
if (is_numeric($originalNumber)) {
$precision = ($vals['precision'] != '' || $vals['precision'] != 0) ? $vals['precision'] : 4;
$factor = pow(10, $precision);
$multipliedNumber = $originalNumber * $factor;
//$integerMultipliedNumber = floor($multipliedNumber);
$var = explode(".", $multipliedNumber);
$integerMultipliedNumber = $var[0];
return $result = (float) ($integerMultipliedNumber / $factor);
} else {
return $originalNumber;
}
}
using this , we can apply precision for a number without rounding the value for eg:- 45.12345678 precision given is 3,then output is 45.123
but if a number like this, :45.1000000 and precision is 3 then output coming like 45.1 only, that zeros are getting skipped, is there any way to avoid this?