Добавление двух строковых значений в переполнение стека

Я хочу добавить или добавить два значения в Php.

$myvalue = "$10.00"+"$10";

Я хочу этот вывод: —

"$20.00";

Я просто хочу добавить эти значения. Я получаю эти значения откуда-то, я просто хочу, чтобы плюс или дополнения этих значений.
Я новый два php. Пожалуйста, некоторые тела, дайте мне знать, что мы должны сделать, чтобы достичь этого в php.

-3

Решение

Это должно работать для вас:

<?php

$val1 = "$10.00";
$val2 = "$10";

$myvalue = ltrim($val1, "$") + ltrim($val2, "$");
echo "$" . number_format((float)$myvalue, 2, ".", "");

?>

Выход:

$20.00

И если у вас есть только 1 строка, это должно работать:

<?php

$string = "$10.00 + $10";

$values = preg_split("/(\+)/", $string);
array_walk($values, function(&$value) {
$value = ltrim(trim($value), "$");
}, $values);

$myvalue = 0;

foreach($values as $value)
$myvalue += $value;

echo "$" . number_format((float)$myvalue, 2, ".", "");

?>
2

Другие решения

$myvalue = 10.00 + 10;

echo number_format((float)$myvalue, 2, '.', '');
2

Если вы получили строку с долларом, вы можете удалить ее с помощью substr() перед тем как сделать добавление:

$value1 = "$10.00";
$value2 = "$10";

$result = substr($value1, 1) + substr($value2, 1);
var_dump($result) // float(20)
0

Добавление двух строк или целых чисел осуществляется самим PHP. Вы должны заменить все нечисловые символы, кроме «. (Точка)» из строки.

Пример:

$myvalue = preg_replace('/[^0-9.]/', '', "$10.00") + preg_replace('/[^0-9.]/', '', "$10");
echo '$'.$myvalue."\n";
echo '$'.number_format($myvalue, 2, '.', '')."\n"; #for floating point

За ‘$ 10,00 + $ 10’:

$myvalue = eval('return ' . preg_replace('/[^0-9.+]/', '', '$10.00+$10') . ';');
echo '$'.$myvalue."\n";
echo '$'.number_format($myvalue, 2, '.', '')."\n"; #for floating point
0