PHPマニュアル
sprintf
(PHP 3, PHP 4, PHP 5)
sprintf -- フォーマットされた文字列を返す説明
string sprintf ( string format [, mixed args [, mixed ...]] )
フォーマット文字列 format
に基づき生成された文字列を返します。
フォーマット文字列は 0 個以上のディレクティブ(指示子) により構成されます。ディレクティブには、そのまま結果にコピーされる (% を除く) 通常の文字と変換指定子 (conversion specifications) があり、 取り出される際はどちらもそれ自身がパラメータとなります。このことは sprintf() の場合だけでなく printf() の場合も同様です。
各変換指定子は、パーセント記号 (%) の後に これらの要素が一つ以上続いたものになります。
オプションの符号指定子。これは、 数値で符号 (- あるいは +) を使用するよう指定します。 デフォルトでは、数値が負の場合の - 符号のみが使用されます。 この指定子により、正の数にも強制的に + 符号をつけることができます。 これは PHP 4.3.0 で追加されました。
オプションのパディング指定子。これは、 文字列が正しい長さになるまでどんな文字で埋めるかということを 指定します。これは空白かまたは 0 (文字 '0') のいずれかです。デフォルトでは空白で埋められます。 これ以外のパディング文字を指定するには、その文字の前に 単一引用符 (') を置きます。 後述の例を参照ください。
オプションのアラインメント指定子。これは、 結果を左寄せまたは右寄せにしたい場合に指定します。 デフォルトは右寄せです。ここで - 文字を指定すると左寄せとなります。
オプションの数字。これは表示幅指定子です。 結果を(最低)何桁にするかを指定します。
オプションの精度指定子。これは、 浮動小数点数に対して数字を何桁まで表示するかを指定します。 文字列に対して使用した場合は、これは切り捨て位置として働きます。 この文字数を超える文字を切り捨てられます。
型指定子。引数を何の型として扱うかを指定します。 指定できる型を以下に示します。
% - パーセント文字。引数は不要です。 b - 引数を整数として扱い、 バイナリの数値として表現します。 c - 引数を整数として扱い、その ASCII 値の文字として表現します。 d - 引数を整数として扱い、 10 進数として表現します。 e - 引数を科学記法として扱います (例 1.2e+2)。 精度の指定子は、PHP 5.2.1 以降では小数点以下の桁数を表します。 それより前のバージョンでは、有効数字の桁数 (ひとつ小さい値) を意味していました。 u - 引数を整数として扱い、符号無しの 10 進数として表現します。 f - 引数を double として扱い、 浮動小数点数として表現します。 F - 引数を float として扱い、 浮動小数点数として表現します (ロケールに依存しません)。 PHP 4.3.10 および PHP 5.0.3 以降で使用可能です。 o - 引数を整数として扱い、 8 進数として表現します。 s - 引数を文字列として扱い、表現します。 x - 引数を整数として扱い、16 進数として (小文字で)表現します。 X - 引数を整数として扱い、16 進数として (大文字で)表現します。
PHP 4.0.6 以降、フォーマット文字列における引数の 番号付け/交換 がサポートされました。以下に例を示します。
例 1. 引数の交換
|
例 2. 引数の交換
|
例 3. 引数の交換
|
例 4. 引数の交換
|
printf(), sscanf(), fscanf(), vsprintf(), number_format() も参照ください。
例
例 5. printf() のさまざまな例
このプログラムの出力内容は次のようになります。
|
例 6. printf() の文字列指定子
このプログラムの出力内容は次のようになります。
|
例 7. sprintf: 整数を 0 でパディング
|
例 8. sprintf: 通貨をフォーマットする例
|
例 9. sprintf(): 科学記法
|
