3v4l.org

run code in 300+ PHP versions simultaneously
<?php function numericToStringDecimal($number, $nb_decimal = 2) { $int_part = (int)$number; $dec_part = $number - $int_part; $dec_len = strlen($dec_part) - 2; $dec_len = ($dec_len > 0) ? $dec_len : 0; if ($dec_len < $nb_decimal) { $string = number_format($number, $dec_len, ',', ' '); if (str_contains($string, ',') === false) { $string .= ','; } for ($i = $dec_len; $i < $nb_decimal; $i++) { $string .= '0'; } } else { $string = number_format($number, $nb_decimal, ',', ' '); } return $string; } var_dump(numericToStringDecimal(1000)); var_dump(number_format(1000, 2, ',', ' ')); var_dump(numericToStringDecimal(1000.5432543)); var_dump(number_format(1000.5432543, 2, ',', ' ')); var_dump(numericToStringDecimal(432143214321.5434325431)); var_dump(number_format(432143214321.5434325431, 2, ',', ' ')); var_dump(numericToStringDecimal(-43214321423.4343214123)); var_dump(number_format(-43214321423.4343214123, 2, ',', ' ')); var_dump(numericToStringDecimal(-43214321423e10)); var_dump(number_format(-43214321423e10, 2, ',', ' '));
Output for 8.1.0 - 8.1.29, 8.2.0 - 8.2.23, 8.3.0 - 8.3.11
string(8) "1 000,00" string(8) "1 000,00" string(8) "1 000,54" string(8) "1 000,54" string(18) "432 143 214 321,54" string(18) "432 143 214 321,54" string(18) "-43 214 321 423,43" string(18) "-43 214 321 423,43" string(31) "-432 143 214 229 999 976 448,00" string(31) "-432 143 214 229 999 976 448,00"

preferences:
47.92 ms | 406 KiB | 5 Q