\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);
Выглядит очень плохо. Как вывести величину примененного правила работы с корзиной к элементу корзины как число, а не строку?