Числовой формат PHP - PullRequest
       4

Числовой формат PHP

4 голосов
/ 10 июня 2011

У меня есть эта строка:

000000000000100

и мне нужно преобразовать ее в:

1,00

Итак, правила:

  1. Разделитечисло на 100 и использование запятой в качестве десятичного разделителя
  2. Обрезать ведущие нули
  3. Оставить два десятичных знака

Ответы [ 2 ]

16 голосов
/ 10 июня 2011

Со страницы руководства PHP на number_format:

строка number_format (число с плавающей запятой, int $ decimals = 0, строка $ dec_point = '.', Строка$,000_sep = ',')

Если вы хотите, чтобы числа типа 123456 были отформатированы как 1234,45, используйте:

echo number_format($number / 100, 2, ",", "");

Если вам нужна точка в качестве разделителя тысяч(1.234,56):

echo number_format($number / 100, 2, ",", ".");

PHP автоматически удаляет нули при преобразовании строки в число.

6 голосов
/ 10 июня 2011
string number_format ( float $number , 
                       int $decimals = 0 ,
                       string $dec_point = '.' ,
                       string $thousands_sep = ',' )

Руководство: http://php.net/manual/en/function.number-format.php

// divide by 100 to shift ones place.
echo number_format((int)'000000000000100' / 100,2,',','');
...