Не понимаю в чем проблема.
Дано:
Есть тарифы с фиксированной ценой.
Есть возможность менять тариф.
Вопрос:
При пересчете стоимости по какой то причине каждый раз увеличивается баланс, хотя оба прайса (старый и новый каждый раз один и тот же).
Упрощенный варинт привожу ниже.
$balance = 1000;
$oldTariff = 50;
$newTariff = 30;
//Получаем количество месяцев в текущем месяце.
$currMonthDays = cal_days_in_month(CAL_GREGORIAN, date("m"), date("Y"));
//Рассчитываем стоимость одного дня по тарифу
$dayPrice = $oldTariff / $currMonthDays;
//Вычисляем количество оставшихся дней до конца оплаты тарифа
$daysLeft = date("d", strtotime(2018-12-10 10:00:00) - strtotime(date("Y-m-d H:i:s")));
//Оставшиеся дни в пересчете на стоимость
$leftPrice = number_format($daysLeft * $dayPrice, 2);
//Вычитаем разницу стоимости тарифов
$newPrice = $newTariff - $leftPrice;
$balance += $newPrice;
print $balance;
Что не так? Поможите чем сможите.
Я так понимаю что, что то не так с количеством дней.
Хотя нет, что то с обновлением мускула не то.