2012-07-25 177 views
5

在我的數據庫中,我有價值觀像格式化價格爲逗號分隔

256.23,200.33,89.33,133.45,

我有一千乘以這些值,然後格式化結果作爲價格(逗號隔開)

 
256.23 x 1000 = 256230   I want to show this as   256,230 

200.33 x 1000 = 200330   I want this as     200,330 

89.33 x 1000 = 89330    I want this as     89,330 

目前我使用式

echo "Price is : $".$price*1000; 

但是,如何格式化,我不知道。

+0

你爲什麼乘以1000?你爲什麼不保存它呢? – Sherlock 2012-07-25 12:41:40

+0

嗯,合理的問題.... 但實際上這是關於房價和NAR數據。並乘以一千NAR值來獲得實際住房價格... – Leo 2012-07-25 13:00:15

回答

18

您正在尋找number_format功能。

$price=123456; 
echo number_format($price); 
// output: 123,456 

該函數接受一個,兩個,或四個參數(而不是三個):

如果只有一個指定參數,數目將無小數被格式化的,但用逗號(「」)每千人之間。

如果兩個給定參數,數目將被格式化以小數小數與前面各組的幾千之間的點(「‘),和一個逗號(’,」)。

如果給出所有四個參數,則數字將被格式化爲十進制小數,dec_point代替小數點前的小數點(「。」),每千組之間代替逗號(「,」)。

2

檢查number_format,這裏有一個例子

echo number_format(8333*1000, 3, ',', '.'); 
+0

呀真的是SOOO .... :) thanku – Leo 2012-07-25 13:01:09

+0

回聲number_format(8333 * 1000,2, ' ''。'); 很多公司使用這種格式$ 4,500.00 – 2017-08-27 12:11:43

3
<?php 

$number = 1234.56; 

// english notation (default) 
$english_format_number = number_format($number); 
// 1,235 

// French notation 
$nombre_format_francais = number_format($number, 2, ',', ' '); 
// 1 234,56 

$number = 1234.5678; 

// english notation without thousands separator 
$english_format_number = number_format($number, 2, '.', ''); 
// 1234.57 

?> 
+0

很好的解釋..... up up – Leo 2012-07-25 14:45:26

0

$數= 1234.56;

的setlocale(LC_MONETARY, 「EN_US」);

回波money_format( 「價格爲%I」,$號);

//輸出將是 「價格爲1,234.56美元」