using round
function floorWithPrecision($value, $precision = 1) {
return round($value - ( 0.5 / ( 10 ** $precision ) ), $precision, PHP_ROUND_HALF_UP);
}
/*
As a function
*/
echo floorWithPrecision(49.955, 2);
/*
49.95
*/
echo PHP_EOL;
/*
Same but no function both are keeping float
*/
echo round(49.955-0.005, 2, PHP_ROUND_HALF_UP);
/*
49.95
*/