當數字不足時, 通常會想到用 sprintf("%02d",$xxx); 去做補零的動作, 但是, 其實, 可以使用 php 的str_pad() 函式來解決這個需求 ,請參考以下的內容,謝謝

會找到有些使用sprintf函式的方法 像下面這樣

1.$var = 1;
2.echo sprintf("%02d", $var);

其實php本身就有一個專門可以補齊位數的函式 : str_pad()

string str_pad ( string $input , int $pad_length [, string $pad_string= " " [, int $pad_type= STR_PAD_RIGHT ]] )

$input : 原字串
$pad_length : 補齊後的位數
$pad_string : 用來補齊的字串
$pad_type : 補齊的方式 有三種,STR_PAD_RIGHT (由右邊補)、STR_PAD_LEFT (由左邊補)、STR_PAD_BOTH (左右兩邊都補), 預設為STR_PAD_RIGHT

所以其實不只可以補零,要補什麼字都可以
而以補零來舉例的話就是

01.$value = 7;
02.//將數字由左邊補零至三位數
03.$value = str_pad($value,3,'0',STR_PAD_LEFT);
04.echo $value;
05.// 結果會印出 007;
06.  
07.//下面這是document裡的例子
08.$input = "Alien";
09.echo str_pad($input, 10);                      // produces "Alien     "
10.echo str_pad($input, 10, "-=", STR_PAD_LEFT);  // produces "-=-=-Alien"
11.echo str_pad($input, 10, "_", STR_PAD_BOTH);   // produces "__Alien___"
12.echo str_pad($input, 6 , "___");               // produces "Alien_"

這樣應該就可以瞭解這個函式的用法了~

原文轉貼自 http://blog.hsin.tw/2009/php-pad-a-string/ 

 


arrow
arrow
    全站熱搜
    創作者介紹
    創作者 Frank 的頭像
    Frank

    經驗交流分享與備忘

    Frank 發表在 痞客邦 留言(1) 人氣()