Я размышлял о том, как справляться с отображением валют и математикой в PHP, и долгое время хранили его в MySQL с использованием типа DECIMAL
и используя money_format()
для его форматирования для отображения на веб-страница. Однако сегодня я посмотрел на фактический прототип:
string money_format ( string $format , float $number )
Теперь я немного смущен. Все, что мне сказали - избегайте плавать за деньги! Но здесь это - основная функция форматирования (скажем, пять раз быстрее), вставляя вход в float. number_format()
делает то же самое.
Итак, мои вопросы:
-
Если я не имею дело с дробными центами или триллионами долларов (и у меня нет ни того, ни другого), я должен быть заинтересован в том, чтобы отображать и хранить (но не делать математику) валюту, поплавок? Смогу ли я когда-нибудь приблизиться к области, где неточности с плавающей запятой меняют мои фигуры?
-
Если ответ на # 1 состоит в том, что я действительно должен быть обеспокоен, тогда почему
money_format()
построен таким образом?