很多時(shí)候我們需要對數(shù)字進(jìn)行格式化,比如位數(shù)不足前面加0補(bǔ)足。用PHP可以很輕易實(shí)現(xiàn),因?yàn)镻HP自帶了相關(guān)功能的函數(shù)。
<?php   //生成4位數(shù),不足前面補(bǔ)0    $var=sprintf("%04d", 2);  echo $var;//結(jié)果為0002    echo date('Y_m_d', time()).'_'.sprintf('d', rand(0,99));  echo sprintf('%05s',444);//輸出5為字符串,不足以0補(bǔ)充?> sprintf()函數(shù)
1. 語法
sprintf(format,arg1,arg2,arg++)
| 參數(shù) | 描述 | 
|---|---|
| format | 必需。轉(zhuǎn)換格式。 | 
| arg1 | 必需。規(guī)定插到 format 字符串中第一個(gè) % 符號(hào)處的參數(shù)。 | 
| arg2 | 可選。規(guī)定插到 format 字符串中第二個(gè) % 符號(hào)處的參數(shù)。 | 
| arg++ | 可選。規(guī)定插到 format 字符串中第三、四等等 % 符號(hào)處的參數(shù)。 | 
2. 說明
參數(shù) format 是轉(zhuǎn)換的格式,以百分比符號(hào) ("%") 開始到轉(zhuǎn)換字符結(jié)束。下面的可能的 format值:
	•%% - 返回百分比符號(hào)
	•%b - 二進(jìn)制數(shù)
	•%c - 依照 ASCII 值的字符
	•%d - 帶符號(hào)十進(jìn)制數(shù)
	•%e - 可續(xù)計(jì)數(shù)法(比如 1.5e+3)
	•%u - 無符號(hào)十進(jìn)制數(shù)
	•%f - 浮點(diǎn)數(shù)(local settings aware)
	•%F - 浮點(diǎn)數(shù)(not local settings aware)
	•%o - 八進(jìn)制數(shù)
	•%s - 字符串
	•%x - 十六進(jìn)制數(shù)(小寫字母)
	•%X - 十六進(jìn)制數(shù)(大寫字母)
arg1, arg2, ++ 等參數(shù)將插入到主字符串中的百分號(hào) (%) 符號(hào)處。該函數(shù)是逐步執(zhí)行的。在第一個(gè) % 符號(hào)中,插入 arg1,在第二個(gè) % 符號(hào)處,插入 arg2,依此類推。
<?php  $number = 123;  $txt = sprintf("%f",$number);  echo $txt;  ?> 
3. 格式數(shù)字 number_format()
<?php $number = 1234.56;// english notation (default)$english_format_number = number_format($number);// 1,235// French notation$nombre_format_francais = number_format($number, 2, ',', ' ');// 1 234,56$number = 1234.5678;// english notation without thousands seperator$english_format_number = number_format($number, 2, '.', '');// 1234.57?>
以上這篇PHP數(shù)字前補(bǔ)0的自帶函數(shù)sprintf 和number_format的用法(詳解)就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持VeVb武林網(wǎng)。
新聞熱點(diǎn)
疑難解答
圖片精選