2014-12-30 2 views
-3

Я хочу добавить или добавить два значения в Php.Дополнения двух строковых значений в php

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

Я хочу, чтобы этот вывод: -

"$20.00"; 

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

+2

действительно вам нужно задать вопрос для того – meda

+1

Вы получаете эти значения как строки? И что вы пробовали до сих пор? – Rizier123

+0

'$ myvalue = (10.00 + 10); print $ myvalue; ' – Eugen

ответ

2

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

<?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

Подождите, пока дым очистится, прицелитесь, затем выстрелите. ;-) –

2
$myvalue = 10.00 + 10; 

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

Проблема с вашим вопросом заключается в том, что вы добавляете две строки, вам нужно сначала добавить два числа, а затем поставить перед ним знак $ (знак доллара). – Mike

+1

Я получаю такие значения: - «$ 10.00» + «$ 10» в строчном формате. –

+0

Является ли пользователь печатать в $ -sign? – Mike

0

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

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

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

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

Пример:

$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