欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

PHP實(shí)現(xiàn)對(duì)數(shù)字分隔加千分號(hào)的方法

 更新時(shí)間:2019年03月18日 09:08:07   作者:豆蔻詞工難賦深情  
今天小編就為大家分享一篇關(guān)于PHP實(shí)現(xiàn)對(duì)數(shù)字分隔加千分號(hào)的方法,小編覺(jué)得內(nèi)容挺不錯(cuò)的,現(xiàn)在分享給大家,具有很好的參考價(jià)值,需要的朋友一起跟隨小編來(lái)看看吧

對(duì)于較大數(shù)字,添加千分號(hào)可以方便快速地讀出數(shù)值。千分號(hào)是指從最右邊開(kāi)始,每隔三位加個(gè)逗號(hào)。這種寫(xiě)法很廣泛,來(lái)源大概是因?yàn)橛⑽闹?Thousand,千、million,百萬(wàn)、billion,十億 都是隔三位的。在這里我們使用php實(shí)現(xiàn)數(shù)字格式化,數(shù)字每三位加逗號(hào)的功能函數(shù),具體如下:

number_format

摘自PHP官方文檔(PHP 4, PHP 5)

number_format — 以千位分隔符方式格式化一個(gè)數(shù)字

說(shuō)明

string number_format ( float$number [, int$decimals = 0 ] )
string number_format ( float$number , int$decimals = 0 , string $dec_point = '.' , string $thousands_sep = ',' )

本函數(shù)可以接受1個(gè)、2個(gè)或者4個(gè)參數(shù)(注意:不能是3個(gè)):

如果只提供第一個(gè)參數(shù), number 的小數(shù)部分會(huì)被去掉 并且每個(gè)千位分隔符都是英文小寫(xiě)逗號(hào)","

如果提供兩個(gè)參數(shù), number 將保留小數(shù)點(diǎn)后的位數(shù)到你設(shè)定的值,其余同樓上

如果提供了四個(gè)參數(shù), number 將保留decimals 個(gè)長(zhǎng)度的小數(shù)部分, 小數(shù)點(diǎn)被替換為 dec_point ,千位分隔符替換為 thousands_sep

參數(shù)

number

你要格式化的數(shù)字

decimals

要保留的小數(shù)位數(shù)

dec_point

指定小數(shù)點(diǎn)顯示的字符

thousands_sep

指定千位分隔符顯示的字符      

function num_format($num){
 if(!is_numeric($num)){
 return false;
 }
 $num = explode('.',$num);//把整數(shù)和小數(shù)分開(kāi)
 $rl = $num[1];//小數(shù)部分的值
 $j = strlen($num[0]) % 3;//整數(shù)有多少位
 $sl = substr($num[0], 0, $j);//前面不滿(mǎn)三位的數(shù)取出來(lái)
 $sr = substr($num[0], $j);//后面的滿(mǎn)三位的數(shù)取出來(lái)
 $i = 0;
 while($i <= strlen($sr)){
 $rvalue = $rvalue.','.substr($sr, $i, 3);//三位三位取出再合并,按逗號(hào)隔開(kāi)
 $i = $i + 3;
 }
 $rvalue = $sl.$rvalue;
 $rvalue = substr($rvalue,0,strlen($rvalue)-1);//去掉最后一個(gè)逗號(hào)
 $rvalue = explode(',',$rvalue);//分解成數(shù)組
 if($rvalue[0]==0){
 array_shift($rvalue);//如果第一個(gè)元素為0,刪除第一個(gè)元素
 }
 $rv = $rvalue[0];//前面不滿(mǎn)三位的數(shù)
 for($i = 1; $i < count($rvalue); $i++){
 $rv = $rv.','.$rvalue[$i];
 }
 if(!empty($rl)){
 $rvalue = $rv.'.'.$rl;//小數(shù)不為空,整數(shù)和小數(shù)合并
 }else{
 $rvalue = $rv;//小數(shù)為空,只有整數(shù)
 }
 return $rvalue;
}

另外可以使用系統(tǒng)自帶的函數(shù) string number_format ( float number [, int decimals [, string dec_point, string thousands_sep]] )

echo number_format('169856420');

輸出結(jié)果將為:169,856,420

echo number_format('1000000',2);

輸出結(jié)果將為:1,000,000.00

echo number_format('1000000',2,',','.');

輸出結(jié)果將為:1.000.000,00

總結(jié)

以上就是這篇文章的全部?jī)?nèi)容了,希望本文的內(nèi)容對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,謝謝大家對(duì)腳本之家的支持。如果你想了解更多相關(guān)內(nèi)容請(qǐng)查看下面相關(guān)鏈接

相關(guān)文章

最新評(píng)論