2015-05-05 2 views
-1

у меня номер:Количества верстка - всегда от 2 до 4 знаков после запятой после десятичного разделителя и с разделителем

  1. 0,1
  2. 0,15
  3. 0,1555

Но мне нужно показать эти цифры в таком формате:

  1. 2,000.00
  2. 100,00
  3. 0,10
  4. 0,15
  5. 0,1555

я никогда не будет иметь более 4 знаков после запятой после десятичного разделителя. Если после десятичного разделителя только null, мне нужно отобразить 2 нуля (пример выше).

Как я могу отформатировать эти цифры, чтобы получить требуемый формат? Спасибо!

EDIT: Я не могу использовать только number_format функцию, потому что с помощью этой функции можно установить только, сколько знаков после запятой будет после десятичного разделителя, но, как я уже писал выше - иногда будет 2, иногда 4. Так , если мой номер 2000.0001, и я установил этот number_format(2000.0001, 4) вывод будет 2000.0001, но другой номер, например 0.1, будет выводить 0.1000, но мне он нужен с 0.10.

+2

Используйте 'number_format', чтобы получить 4 цифры, а затем удалить все нули в конце. – Barmar

+0

Возможный дубликат [Формат числа сгруппированными тысячами] (http://stackoverflow.com/questions/10424120/format-a-number-with-grouped-thousands) – ledesma

+0

@ledesma Это не показывает, как получить переменную количество цифр после десятичного числа. – Barmar

ответ

2

Первое использование number_format, чтобы добавить запятые и получить 4 цифры после десятичной дроби. Затем используйте регулярное выражение для удаления до двух конечных нулей.

$formatted = preg_replace('/0{1,2}$/', '', number_format($input, 4)); 

DEMO

Смежные вопросы