2013-03-02 3 views
1

Мне нужно взять переменную $ _POST и заставить ее иметь 2 десятичных разряда без запятых.сила 2 десятичных разряда в PHP без запятых, когда переменная задана не может иметь значения

Нижеследующие работы, но, безусловно, это не лучший способ сделать это.

$difference = str_replace(",","",number_format((int)$_POST["difference"],2)); 

я поставил (int)$_POST["difference"],2) так что бы преобразовать нулевое значение 0 и предотвратить предупреждение number_format() expects parameter 1 to be double, string given ... как некоторые из форм входов на предыдущей странице не могут быть использованы.

Как я уже говорил, это действительно работает. В основном я беспокоюсь о непредвиденных побочных эффектах от этого, потому что это не кажется очень чистым.

Есть ли лучший способ?

ответ

9
number_format((float)$number, 2, '.', ''); 

другой способ:

sprintf('%0.2f', $unpadded); // 520 -> 520.00 
+0

Ничего себе, я полностью пропустил, что вы могли бы указать разделитель тысяч в документации для 'number_format()' Большое спасибо! – DelightedD0D

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