Функция money_format() в PHP

Пример

Международный формат en_US:

<?php
$number = 1234.56;
setlocale(LC_MONETARY,"en_US");
echo money_format("The price is %i", $number);
?>

Вывод кода выше:

The price is USD 1,234.56

Определение и использование

Функция money_format() возвращает строку, форматированную как строка валюты.

Эта функция вставляет форматированное число в позицию процента (%) в главной строке.

Комментарии:Функция money_format() не работает на платформе Windows.

Совет:Эта функция часто используется вместе с setlocale() Использовать вместе с функцией.

Совет:Чтобы увидеть все доступные языковые коды, пожалуйста, посетите нашРуководство по кодам языков.

Грамматика

money_format(string,number)
Параметр Описание
string

Обязателен. Указать строку для форматирования и как форматировать переменные в ней.

Возможные значения формата:

Заполнение и знаки:

  • =f - Указать символ (f) в качестве заполнителя (например: %=t использовать "t" в качестве заполнителя). По умолчанию используется пробел в качестве заполнителя.
  • ^ - Удалить использование знаков группировки.
  • + или ( - Указать способ отображения положительных и отрицательных чисел. Если используется "+", то используется местный символ + и - (обычно символ перед отрицательным числом, без символа перед положительным). Если используется "(", отрицательное число будет включено в скобки. По умолчанию используется "+".
  • ! - Прекратить использование символа валюты в строке вывода.
  • - Если используется "-", все поля будут выровнены по левому краю. По умолчанию выравнивание по правому краю.

Ширина поля:

  • x - Указать минимальную ширину поля (x). По умолчанию 0.
  • #x - Указать максимальное количество знаков перед точкой (x). Используется для выравнивания формата вывода в одной строке. Если количество знаков больше x, это правило будет проигнорировано.
  • .x - определяет максимальное количество цифр справа от точки (x). Если x равно 0, точка и цифры справа от нее не будут отображаться. По умолчанию используется локальная настройка.

Символы преобразования:

  • i - число форматируется в формате международной валюты.
  • n - число форматируется в формате национальной валюты.
  • % - возвращается символ %.

Комментарии:Если используются несколько значений формата, они должны появляться в порядке, указанном выше.

Комментарии:Функция зависит от локальных настроек.

number Обязателен. Число, вставляемое в позицию % в строку формата.

Технические детали

Возвратное значение:

Возврат отформатированной строки.

Символы перед и после строки формата сохраняются. Ненумерационные числа возвращаются как NULL и вызывают E_WARNING.

Версия PHP: 4.3.0+

Более примеров

Пример 1

Международный формат с 2 знаками после запятой (Германия):

<?php
$number = 1234.56;
setlocale(LC_MONETARY,"de_DE");
echo money_format("%.2n", $number);
?>

Вывод кода выше:

1 234,56 EUR

Пример 2

Отрицательное число, с () для индикации отрицательного числа в формате US международного стандарта, с правым значением точности 2 и "*" в качестве символа заполнения:

<?php
$number = -1234.5672;
echo money_format("%=*(#10.2n",$number);
?>

Вывод кода выше:

(******1234.57)