2009-12-31 109 views
0

我有一個變量$ totalprice,數字爲1,072.00。將字符串轉換爲數字時出現問題

如果我使用int($ totalprice)或number_format($ totalprice),則它輸出1.00。

我該如何解決這個問題?我想要1072.00

回答

2
$totalprice = (float)str_replace(',', '', $totalprice) 

這將爲您帶來一個正常的浮點型數字表示。然後,您可以將number_format函數應用於該函數以獲取所需的輸出。

也許你應該重新考慮你對數字的處理。首先如何獲得格式1,072.00?在輸出到瀏覽器之前,您不應該對其進行格式設置,因此該數字應始終爲1072.00格式。

+0

謝謝。我會看看它。 – shin 2009-12-31 12:17:57

1

您遇到的問題是有關語言環境的問題。爲了避免關於貨幣格式的問題,我建議您使用

string money_format (string $format , float $number) 

通過使用此功能,您可以根據所需格式格式化數字。你可以閱讀更多有關此功能,在這裏使用的格式類型:money_format

+0

+1:提及語言環境。 – 2009-12-31 13:14:27

0

這是不是一個錯誤,因爲你的號碼是從留到第一個無效字符解析(在

這樣1,072.00被真正的,072.00,只是加粗節當您嘗試將字符串轉換爲數字時會被解析。

相關問題