Skip to content

Instantly share code, notes, and snippets.

@hoangphunam0604
Last active February 17, 2022 16:04
Show Gist options
  • Save hoangphunam0604/019ea81e5e66230e26c6eb54e5d19619 to your computer and use it in GitHub Desktop.
Save hoangphunam0604/019ea81e5e66230e26c6eb54e5d19619 to your computer and use it in GitHub Desktop.
get number of very very small decimal digits
<?php
//get_number_very_small_decimal_digits(0.000000000097232321312312);
// return (string) 0.000000000097232321312312
//get_number_very_small_decimal_digits(0.000000098765);
// return (string) 0.000000098765
//get_number_very_small_decimal_digits(0.0000000000987);
// return (string) 0.0000000000987
function get_number_very_small_decimal_digits(float $number, int $decimal = 0): string
{
if ($number >= 1000)
return number_format($number, $decimal);
$str = rtrim(number_format($number, 14 - log10($number)), '0');
$decimal_len = strlen(substr(strrchr($str, "."), 1));
$format = "%0.".sprintf("%d", $decimal_len)."f";
return sprintf($format, $number);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment