2009-11-27 9 views
3

Существуют ли какие-либо стандарты или правила, которые следует соблюдать при обработке денег и деноминаций в php , например 0,45c, .35c или $ 4,00 в качестве значений?php обработка денег и денежных средств

Я не хочу делать это 400 центов в качестве значения за $ 4,00, я просто хотел использовать $ 4,00 долларов, как и в php без изменений, аналогично .50c как есть.

+0

В зависимости от количества, валюты и стран вы хотите обрабатывать? – random

+5

Я думаю, что первое правило заключается в том, что вы не используете двусмысленные значения, такие как .45c, когда вы имеете в виду 45c – pavium

+2

Но откуда вы знаете, что он не бритвенные доли процента? Вы не смотрели * Офисное пространство? * – random

ответ

7

Обычно фракции выражены как 0,45 доллара США или 0,12 доллара США.

Использование number_format() в PHP может помочь вам форматировать значения любым способом. Существует также money_format(), который учитывает настройки локали, чтобы попытаться выяснить, как отображать валюту.

Если вы использовали центов, большинство валют имеют разные названия для них, а также различное форматирование. Таким образом, самый простой и безопасный способ использования валют - взять валютный код/​​имя и сохранить все значения в одной и той же форме.

Также не ошибитесь здесь, форматирование символа валюты также сильно отличается в разных странах. Символ может быть помещен влево или вправо, с пробелом или без него, и это может быть одна или несколько букв или символов. Поэтому имеет смысл использовать такие функции, как money_format(), если возможно, отнять много логики.

Если вы хотите знать, как другие справляются с этим, взгляните на некоторые из платформ электронной коммерции, таких как Magento, Prestashop, Zencart, osCommerce и т. Д. Они также имеют библиотеки и функции для работы с отображением валюты и иногда конвертация валюты.

Литература
Formatting money/currency | number_format() | money_format()

+0

Спасибо за ссылки, классная функция. $ formatted = number_format ($ money ["moolah"], 2); Красивые ... – Newb