Проблема не в том, что $ ship - это строка с 5.95
.., которая была бы должным образом конвертирована в float, но я думаю, что это .. 5,95
и которая будет конвертирована в 5
<?php
$ship = "5,95";
$price = "18,55";
$sell = ($ship + $price);
echo "$sell = ($ship + $price)";
?>
вывод:
23 = (5,95 + 18,55)
преобразование:
<?php
$ship = (float) "5,95";
$price = (float) "18,55";
$sell = ($ship + $price);
echo "$sell = ($ship + $price)";
?>
вывод:
23 = (5 + 18)
Использование:
$ship = str_replace(',','.',$ship);
$price = str_replace(',','.',$price);
И это должно сработать!