2012-08-30 92 views
1

我使用Google的貨幣API來獲取匯率並將它們存儲在我的數據庫中,但我遇到了一些問題。這裏就是我的工作:Google finance API - 麻煩提取貨幣匯率

http://www.google.com/ig/calculator?hl=en&q=100USD=?GBP 

我總是傳遞1USD作爲第一個參數和對攻,在我的數據庫中的所有貨幣,把結果變量作爲float和存儲。一切正常,直到API的結果大於1000.例如:

http://www.google.com/ig/calculator?hl=en&q=100USD=?PYG 這會返回「440 528.634」作爲值,並且問題出現在空格分隔符中。當我將它轉換爲浮點時,它只存儲「440」。我試着在它上面運行str_replace()之前將它轉換爲浮點數,但由於某種原因不起作用 - 我猜這不是普通的空格,而是某種特殊字符。我也嘗試通過空間爆炸變量並返回合併的數組字段,但沒有骰子。我在這裏用完想法,所以我真的希望有人能夠幫助我:D

+3

它是['U + 00A0'](http://www.fileformat.info/info/unicode/char/a0/),NO-BREAK SPACE。 – eggyal

回答

1

它是一個不間斷的空格字符。您可以將其替換爲\xA0

$result = str_replace("\xA0", "", $result); 

請注意雙引號。使用這些而不是單引號,否則將無法正常工作。

+0

哦,沒有注意到你的答案 – Learath2

1

它的NO BREAK空間。你應該把它稱爲\xA0

$x = str_replace("\xA0", "", $x); 

應該工作。