Как отформатировать цену
Короткий ответ
number_format() задаёт число знаков, знак дроби и разделитель тысяч:
<?php
echo number_format(1234567.5, 2, ',', ' '), ' €';Результат:
1 234 567,50 €Без копеек
Если копейки не нужны, укажите ноль знаков:
<?php
echo number_format(1234567.5, 0, ',', ' '), ' €';Результат:
1 234 568 €Цена в копейках
Деньги надёжнее хранить целым числом копеек, а делить на сто только при выводе:
<?php
$cents = 129950;
echo number_format($cents / 100, 2, '.', ' ');Результат:
1 299.50Функции из этого ответа
- number_format — Форматирует число для показа: знаки после запятой и разделитель тысяч.
- round — Округляет число до заданного количества знаков.
- sprintf — Возвращает строку, собранную по шаблону.