170 похожих чатов

Народ, как лучше работать с float в php и хранить

это в БД?

12 ответов

23 просмотра

в БД - либо в целочисленном формате хранить либо в decimal. в PHP - если это деньги, вроде есть либа moneyphp/money, если что-то другое но важна точность - имхо лучше преобразовывать в целые числа и работать уже с ними

L-K Автор вопроса
Bat
в БД - либо в целочисленном формате хранить либо в...

А на каком уровне преобразовать? Постоянно везде умножать на 100 - полная жуть. На уровне записи и получения из БД?

на уровне вывода пользователю делить на 100, а все расчеты в копейках, т.е. в целых значениях

Только для показа юзеру

L-K Автор вопроса
Adel
Только для показа юзеру

И везде надо учитывать что есть какой-то коэффициент?

L-K Автор вопроса

NumberFormatter class

L-K Автор вопроса
Adel
Надо освоить Value Object шаблон

Хм. Это интересная мысль. У меня кейс - хранение денег и расчёт рефералки. Вот там где я ввожу деньги - * на 100,там где вывожу пользователю - делю на 100. А вот в расчёте рефералки приходится тоже на 100 делить. Учитывать этот коэффициент. И проблема в том, что этот коэффициент возможно станет динамическим в зависимости от валюты. Value Object меня спасёт?

L-K Автор вопроса
Sergey Chizhik
Абсолютно нормально, ничего жуткого

Когда у меня будет куча этих делений и мне придётся коэффициент деления поменять в зависимости от валюты - будет жутко. Value Object думаю подойдёт лучше

L K
Когда у меня будет куча этих делений и мне придётс...

Ну внутри vo тебе никто не мешает хранить целочисленно. Просто что бы ты не размазывал сильно логику округления при работе с деньгами

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

Обсуждают сегодня

Всем привет! Имеется функция: function IsValidChar(ch: UTF8Char): Boolean; var i: Integer; ValidChars: AnsiString; begin ValidChars := 'abcdefghijklmnopqrstuvwxyzABCDE...
Евгений
44
И никого не интересует какие пакеты кто использует. ((% Заходишь на сайт симфони и видишь поддержку Украины - по законам РФ это ж экстремизм. Только никто не отказывается от с...
Am Ambrion
11
лучше скажите, причём тут паскаль?
Alexey Kulakov
36
Чтобы перехватить все нажимания буков на форме, надо хук ставить? Пробовал на форме ОнКейДаун, оно ловит клаву если фокус не на компоненте с вводом текста
Serjone
15
Но, может, есть уже проверенная? Наши требования такие: 1. Сообщения должны приходить из Инста в CRM оду 2. Должна быть возможность подключить несколько экаунтов Инстаграм. Р...
Alexander Sharoiko MSE / Александр Шаройко
7
Народ! Впервые клиенту пришло письмо от РКН, у вас, дескать, есть яндекс метрика, а нигде не написано, что вы ее юзаете. Никто не сталкивался?
Sasha Beep
14
Всем привет! вывожу на общей стр дочерние ресурсыв каждом ресурсе галерея, и первая фотка должна выводиться на общей [!DocLister? &prepare=photo !]
Alekso
12
Я правильно понимаю что нет способов получить список ожидающих заявок на вступление в группу с помощью бота из mtproto?
Шамиль Прилов
7
А можно вопрос? Мне сегодня сказали что у меня функция (которая просто заполняет массив значениями) не правильная void Full(double * arr, int n) { for (int i = 0; i < n; i...
† C E †
7
Добрый вечер. Хочу чтобы у меня в классе поле было функцией, которая возвращает строку. Делаю так: interface ... TGetOutPath = function : String of object; ... protec...
Kirill Filippenok
12
Карта сайта