zkrvndm
@zkrvndm
Архитектор решений

Как разбить цену на разряды?

Возможно ли при помощи number_format получить не 1 234.00, а 1 234?

<?php

$number = 1234;

echo number_format($number, 2, '.', ' ');

// 1 234.00

Хочу чтобы копейки выводились только если они есть, так как нет смысла выводить нули, когда копеек нет.

Может еще какие встроенные функции есть под это дело? Есть копейки - выводим, нет - не выводим.
  • Вопрос задан
  • 153 просмотра
Решения вопроса 3
delphinpro
@delphinpro Куратор тега PHP
frontend developer
echo str_replace('.00', '', number_format($number, 2, '.', ' ');


Будет вырезать нули, если они есть
Ответ написан
echo number_format($number, 0, '.', ' ');
Ответ написан
Комментировать
Adamos
@Adamos
И в вопросе, и в ответах есть недочет - полученная строчка будет содержать пробел и может быть перенесена посреди суммы. Нужно использовать неразрывный пробел: number_format($n, 2, ',', "\x0A");
И да, в российской локали традиционный разделитель - запятая.
Что следует, например, из выражения "количество знаков после запятой" ;)
Ответ написан
Комментировать
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы