<?php
$numbers = array(
20/3,
20/3 * 1e6,
6.66,
6.0,
60.0,
10/9,
1000000000000000000000000000000000,
);
$p = (int) ini_get('precision');
foreach ($numbers as $n) {
echo 'RAW: ' . $n . "\n";
echo 'EXP: ' . var_export($n, TRUE) . "\n";
echo 'FIX: ' . rtrim(rtrim(sprintf('%.' . max($p - ceil(log10($n)), 0) . 'F', $n), '0'), '.') . "\n";
echo "\n";
}
preferences:
37.24 ms | 402 KiB | 5 Q