字串函式庫

sprintf

(PHP3 , PHP4)

sprintf ---  傳回格式化字串

語法 : string sprintf (string format [, mixed args...])

說明 : 

依照格式化字串 format,傳回一字串。

格式化字串是由 0(zero)或是一些命令所構成的,普通的字元(不包含%)會直接地複製到結果,這適用於sprintf( )和printf( )

各個轉換的規格是由這些元素所構成,依序是 :

  1. 非必需選項指定填塞,說明使用何種字元來填塞結果成為適當的字串長度,它可以是個空白字元或是 0(字元 0),它預設上是使用空白來填塞。要替換填塞字元,可以在字首前面加上單引號( ' )來指定,參考下面的範例。
  2. 非必需選項指定對齊方式,說明結果應該要靠左對齊還是靠右對齊,預設是靠右對齊,可以使用字元 - 來使它靠左對齊。

  3. 非必需選項指定寬度,說明這個轉換要產生出多少(最少)字元。

  4. 非必需選項指定精準度,說明要顯示到小數點第幾位,這個選項對於浮點數以外的型態沒有影響,另外一個函式number_format( )有助於將數字格式化。

  5. 指定型態說明要將參數看待成何種型態,可能的型態有 :

% - 百分比字元,不需要參數

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( )


上一頁 首頁 下一頁