sprintf --- 傳回格式化字串
語法 : string sprintf (string format [, mixed args...])
說明 :
依照格式化字串 format,傳回一字串。
格式化字串是由 0(zero)或是一些命令所構成的,普通的字元(不包含%)會直接地複製到結果,這適用於sprintf( )和printf( )。
各個轉換的規格是由這些元素所構成,依序是 :
非必需選項指定填塞,說明使用何種字元來填塞結果成為適當的字串長度,它可以是個空白字元或是 0(字元 0),它預設上是使用空白來填塞。要替換填塞字元,可以在字首前面加上單引號( ' )來指定,參考下面的範例。
非必需選項指定對齊方式,說明結果應該要靠左對齊還是靠右對齊,預設是靠右對齊,可以使用字元 - 來使它靠左對齊。
非必需選項指定寬度,說明這個轉換要產生出多少(最少)字元。
非必需選項指定精準度,說明要顯示到小數點第幾位,這個選項對於浮點數以外的型態沒有影響,另外一個函式number_format( )有助於將數字格式化。
指定型態說明要將參數看待成何種型態,可能的型態有 :
% - 百分比字元,不需要參數
b - 將參數看待成整數,而且結果為二進制的值
c - 將參數看待成整數,而且結果為此ASCII值的字元
d - 將參數看待成整數,而且結果為十進位的數值
f - 將參數看待成浮點數,而且結果為浮點數
o - 將參數看待成整數,而且結果為八進制的數值
s - 將參數和結果都看待成字串
x - 將參數看待成整數,而且結果為十六進制的數值(小寫字母)
X - 將參數看待成整數,而且結果為十六進制的數值(大寫字母)
Example :
<?php
$isodate = sprintf ("%04d-%02d-%02d", $year, $month, $day);
?>
Example :
<?php
$money1 = 68.75;
$money2 = 54.35;
$money = $money1 + $money2;
// echo $money will output "123.1";
$formatted = sprintf ("%01.2f", $money);
// echo $formatted will output "123.10"
?>
參考 : printf( ) sscanf( ) fscanf( ) number_format( )