2016-05-26 3 views
0

Я заменил запятую, купите с помощью str_replace(); Ниже приводится его кодString replace in PHP

$result1 = mysql_query("SELECT * FROM table WHERE lc_status='Yes' ORDER BY file_no DESC"); 
$tmp=0; 
$tmp1 = 0; 
while($row=mysql_fetch_assoc($result1)){ 
$tmp +=str_replace(',','', $row['jpy_value']); 
$tmp1 +=str_replace(',','',$row['lkr_value']); 

Теперь я могу получить общее значение столбца. но общая стоимость идет без запятой.
Ex: 250000

Как заменить запятую на нормальный формат номера. Я был бы очень рад, если кто-то может мне помочь.

+2

использование [number_format] (http://php.net/manual/en/function.number-format.php) – Thamilan

+0

'$ TMP + = intval (str_replace ("", "", $ строка ['иен_value'])); ' –

+0

Вы можете использовать [' NumberFormatter'] (http://www.php.net/manual/en/class.numberformatter.php) для более чистого решения http: // stackoverflow. com/a/11026779/2290008 – nv1t

ответ

0

использовать intval(), чтобы преобразовать строку в число и str_replace, чтобы заменить ,.

$tmp += intval(str_replace(",", "", $row['jpy_value'])); 
$tmp1 += intval(str_replace(',','',$row['lkr_value'])); 
+1

thx для вашей помощи .. это сработало – user3431701

0

Возможно, вы захотите использовать функцию number_format(). Пример для номера 250000:

<?php 
$number = 250000; 
echo number_format ($number, 2, ",", "."); 

# Output: 250.000,00 
?> 

Выход 250.000,00, потому что я поставил следующие параметры в следующем порядке:

  1. номер (250000)
  2. Всего десятичных (места 2 знаков после запятой после номера)
  3. Разделитель для десятичной точки.
  4. Разделитель тысяч.

Подробнее о number_format().

+0

thx для вашего ответа. но это не дает ответ, который мне нужен. после использования этого кода вычисление становится неправильным. он проверяет – user3431701

+1

thx .. наконец, он сработал. я просто заменил "," на "." – user3431701

+0

Хорошо, хаха, если он сработает, вы можете принять этот ответ, как он был разрешен, если вы хотите @ user3431701 :-) – Jer