Форматирование числа

Статус
В этой теме нельзя размещать новые ответы.

scvorec

Создатель
Регистрация
9 Ноя 2007
Сообщения
33
Реакции
1
Есть переменная
HTML:
$num = "32456,28"; (число может быть любое)

Нужно привести его к более симпатичному виду: 32 456,28
Использовал:
HTML:
<?echo number_format($num, 2,',',' ');?>
Все хорошо, но когда в переменной целое число, т.е. 32456, то выдается
HTML:
32 456,00
А мне нужно, чтобы целое число было без нулей.
Как лечить?
 
  • Заблокирован
  • #2
как вариант, исходя из наличия запятой в строке, изменять второй аргумент (число десятичных знаков)

PHP:
$num = "32456,28";
$num = strpos($num,',') ? number_format(str_replace(',','.',$num),2,',',' ') : number_format($num,0,',',' ');
echo $num;
 
как вариант, исходя из наличия запятой в строке, изменять второй аргумент (число десятичных знаков)
PHP:
$num = "32456,28";
$num = strpos($num,',') ? number_format(str_replace(',','.',$num),2,',',' ') : number_format($num,0,',',' ');
echo $num;
не работает
 
типов данных хоть и нет но привести к ним некто не мешает.
PHP:
$number = 1234;
// Вариант 1  использовать real
echo (is_real($number)? number_format($number, 2, ',', ' '):number_format($number, 0, ',', ' '));
// Вариант 2 использовать float
echo (is_float($number)? number_format($number, 2, ',', ' '):number_format($number, 0, ',', ' '));
// -------------------
$number = 1234.236;
echo (is_real($number)? number_format($number, 2, ',', ' '):number_format($number, 0, ',', ' '));
echo (is_float($number)? number_format($number, 2, ',', ' '):number_format($number, 0, ',', ' '));
 
Статус
В этой теме нельзя размещать новые ответы.
Назад
Сверху