2013-04-09 142 views
1

我有一個Postgre DB,其中一個值是money(type,ofc)。 當我選擇使用PHP,該查詢的輸出格式爲:更改貨幣格式Postgresql

例子:€1,00

我在找什麼來改變這種格式這個其他:

例如:100歐元。

我可以在查詢中更改哪些內容以獲得最後一個結果?

謝謝!

+0

你可以通過查看常見問題部分來改變你對堆棧溢出的問題。 – ITroubs 2013-04-09 08:45:28

回答

1

最快的方法是使用str_replace函數:)

$cash = '€1,00'; 
$cash = str_replace('€','',$cash) . '€'; 
echo $cash; 

但是一個更好的選擇是你的數據庫字段類型更改爲數字型,只是添加你想要它的「€」的標誌。 。

  • 你可以做到這一點取代你的數據庫的SELECT語句裏面,但我認爲它能夠更好地做你的PHP裏面..
+0

謝謝,它的工作原理! – Angel 2013-04-10 06:23:25

1

如果其存儲在數據庫就像一個數字,沒有貨幣,你可以只使用功能number_format($x,y,'.','')

其中 $ x是你的號碼 y是後面小數點分隔 數數「」 - 表示小數點分隔符。 '' - 表示數千之間沒有分隔符

所以,您只需以您想要的方式格式化您的號碼並添加「歐元」符號即可。

如果它的價格有一個函數調用資金格式:

ü必須ü希望菲貨幣國家的語言環境中使用它。 :

setlocale(LC_MONETARY, 'de_DE'); echo money_format('%.2n', $your_variable);

這意味着u使用德國的貨幣。 '%.2n'表示您的輸出是$ yourvariable並且有兩個十進制數字

並且在數字之後或之前用'歐元'符號表示。這取決於語言環境。我認爲斯洛伐克或西班牙在數字後有歐元符號。

試試吧。在PHP

0

這應該同時提供Y ou你需要什麼,並且在所有的貨幣中都是靈活的:

$value = '$4265'; 

if (!is_numeric($value[0])) { 
    $value = substr($value, 1) . $value[0];  
}