ragnar_ok
@ragnar_ok

Как вывести величину примененного правила работы с корзиной (число)?

\Bitrix\Sale\DiscountBase::getApplyResult(true)['RESULT']['BASKET'][1][0]['DESCR']
предоставляет только строковое значение — "скидка 10 000" (см. документацию).

Выяснил, что в
\Bitrix\Sale\DiscountBase::getApplyResult(true)['RESULT']['BASKET'][1][0]['DESCR']
"скидка" выводится из языковой переменной
$MESS['SALE_DISCOUNT_FORMATTER_MESS_TYPE_DISCOUNT']
(см. \Bitrix\Sale\Discount\Formatter::formatRow).

А "10 000" и является величиной примененного правила работы с корзиной.

Можно ли как-то получить числовое значение примененного правила работы с корзиной к элементу корзины, а не строковое?

Строковое приходится парсить таким образом:
(float) filter_var($applyResult['RESULT']['BASKET'][1][0]['DESCR'], FILTER_SANITIZE_NUMBER_FLOAT);


Выглядит очень плохо. Как вывести величину примененного правила работы с корзиной к элементу корзины как число, а не строку?
  • Вопрос задан
  • 236 просмотров
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

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