2015-12-11 5 views
0

У меня есть 3 варианта скидок для клиентов:Discount вариант с десятичным числом возвращает неверное значение

  • 10%
  • 12,5%
  • 20%

10% и 20% работы штраф, но опция 12,5% возвращает неверные 12%?

$getUserDiscount = "12.5%"; 
$getUserDiscount = str_replace('%', '', $getUserDiscount); 
$percentage = "-0.$getUserDiscount"; 
$surcharge = $cart_contents_total * $percentage; 

Любые идеи, что я делаю неправильно?

+3

почему бы не так ли? вы делаете '' -0.12.5 ", что не является юридически законным. когда вы делаете умножение, php исправляет вашу ошибку до '-0.12' –

+0

@MarcB Yep. Чтобы вы посоветовали? 0,125? –

+2

Я предлагаю не хранить ваши проценты в виде строк. –

ответ

1

Вы можете изменить процентные значения в десятичную только путем деления на 100. Таким образом, это будет, как это для вашей проблемы:

$percentage = -1 * $getUserDiscount/100; 

 Смежные вопросы

  • Нет связанных вопросов^_^