這段時間經(jīng)常用到金錢的格式
例如
¥25,121,111.52
像這樣的格式
之前不太明白還有這樣的方法
都是用截取字符串手動的加上",",后來發(fā)現(xiàn)還有更簡單的方法,php自帶的
下面我就k來給大家介紹一下用法
語法
number_format(number,decimals,decimalpoint,separator)
參數(shù) | 描述 |
---|---|
number | 必需。要格式化的數(shù)字。 如果未設(shè)置其他參數(shù),則數(shù)字會被格式化為不帶小數(shù)點且以逗號(,)作為千位分隔符。 |
decimals | 可選。規(guī)定多少個小數(shù)。如果設(shè)置了該參數(shù),則使用點號(.)作為小數(shù)點來格式化數(shù)字。 |
decimalpoint | 可選。規(guī)定用作小數(shù)點的字符串。 |
separator | 可選。規(guī)定用作千位分隔符的字符串。僅使用該參數(shù)的第一個字符。比如 "xxx" 僅輸出 "x"。 注釋:如果設(shè)置了該參數(shù),那么所有其他參數(shù)都是必需的。 |
下面我來給大家舉個栗子
例子:
1 2 3 4 5 6 7 | echo number_format("1000000"); echo number_format("1000000",2); echo number_format("1000000",2,",","."); echo number_format("1000000",2,"*","."); echo number_format("1000000",2,".",""); ?> |
輸出:
1,000,000
1,000,000.00
1.000.000,00
1.000.000*00
1000000.00
number_format有四個參數(shù),
第一個參數(shù)和第二個參數(shù)是必填的,第三個和第四個是可填可不填。但實際第三個和第四個參數(shù)必須同時存在,也就是說要么都設(shè)置,要么都不設(shè)置。
沒有設(shè)置第三個和第四個參數(shù):
number_format(11526, 2); echo 11,526.00;
如果把處理后的數(shù)字去累加,則只會得到一個11
如果設(shè)置了第三個和第四個參數(shù)
1 | Number_format(21225, 2, '.',''); echo 21225.00; |
然后再對處理后的數(shù)字進行運算的就會正確執(zhí)行了
該函數(shù)的第三個參數(shù)表示小數(shù)點位置用什么來表示,可以默認"." ,也可以設(shè)置成‘,'等其他符號
但我覺得沒人會這么寫
第四個表示每隔千位時分割數(shù)字的符號。如果沒其他特殊需求的話,還要進行運算的話最好設(shè)置為空。