Преобразования строковой переменной в php?

Добрый день. Подскажите пожалуйста вот такую вещь вроде банальная и в тоже время завис над ней.
Суть ситуации в корзине выводится сумма с типом string. В зависимости от выбора доставки сумма меняется то есть если клиент выбирает самовывоз то делается скидка в 10%.

Проблема заключается вот в чем. Если допустим числа 900 и т. д. (до 1000 ) то операция вычисления работают. Но если сумма превышает 1000 рублей он округляет до 1 . К примеру сумма заказа 1800 рублей. При арифметических действиях с вычетом 10 процентов он выводит 0.9 то есть не 1620, а 0.9. Уже перепробовал и преобразование в целое число перед вычислениями и т. п.
Подскажите пожалуйста в чем может быть проблема. Заранее благодарен. Версия PHP 7.1.

p.s.
spoiler
<?php


if (!defined('DIAFAN')) {
    $path = __FILE__;
    $i = 0;
    while (!file_exists($path . '/includes/404.php')) {
        if ($i == 10)
            exit;
        $i++;
        $path = dirname($path);
    }
    include $path . '/includes/404.php';
}
$b5 = 0;
$b4 = 0;
$b1 = $result["cart_delivery"];
$b4 = $result["summ"];
//$b5 = settype($result["summ"], "integer");
$b6 = +($result["summ"]);
$b5 = $b6;

if ($b1 <> 2) {
    $b2 =  $b4;
    
}
else {
    $b2 = $b5;
    //echo gettype($b5);
}

$b3 = $b2;

echo '<div class="order-result">'
 . $this->diafan->_('Итогo с доставкой') . ' <i><span id="order_summ">' . $b3 . '</span> ' . $result['currency'] . '</i>';

// общая скидка от объема
if (!empty($result["discount_total"]) || !empty($result["discount_next"])) {
    echo '<div class="discount-result">';
    if (!empty($result["discount_next"])) {
        echo $this->diafan->_('До скидки %s осталось <i>%s</i>', true, $result["discount_next"]["discount"], $result["discount_next"]["summ"]);
    }

    if (!empty($result["discount_total"])) {
        echo $this->diafan->_('Скидка') . ' ' . $result["discount_total"]["discount"];
    }

    echo '</div>';
}


if (!empty($result["delivery"])) {
    foreach ($result["delivery"] as $row) {
        if($row["id"] == $result["cart_delivery"]) {
            echo '<div class="delivery-result">'.$this->diafan->_('Доставка <i>%s</i>',true,$row["price"] . ' ' . $result['currency']).'</div>';
            break;
        }
    }
}


echo '</div>';
  • Вопрос задан
  • 82 просмотра
Решения вопроса 1
Пригласить эксперта
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы
29 мар. 2024, в 10:00
10000 руб./за проект
29 мар. 2024, в 09:59
750 руб./в час
29 мар. 2024, в 09:55
50000 руб./за проект