|
sprintfフォーマットされた文字列を返す 説明
string sprintf(string
$format , mixed ...$values )
フォーマット文字列 パラメータ
戻り値
フォーマット文字列 エラー / 例外
PHP 8.0.0 以降では、
引数の数が0の場合に ValueError
がスローされます。
これより前のバージョンでは、代わりに
PHP 8.0.0 以降では、
PHP 8.0.0 以降では、
PHP 8.0.0 以降では、
引数が必要な数より少なかった場合、
ArgumentCountError
がスローされます。
これより前のバージョンでは、代わりに 変更履歴
例例1 引数の交換 フォーマット文字列における引数の 番号付け/交換 をサポートしています。以下に例を示します。
上の例の出力は以下となります。 There are 5 monkeys in the tree ここで、フォーマット文字列が別のファイルにある場合を考えてみましょう。 これは、出力を国際化したりする場合に行われる可能性があります。 たとえばフォーマット文字列が次のように書き換えられたとすると、
ここで、問題が発生します。フォーマット文字列における置換指示子の順番は、 コードにおける引数の順番と一致していません。 だからといってコードを変更するのではなく、 むしろ置換指示子が参照するフォーマット文字列のほうで指示を行う方が望ましいでしょう。 フォーマット文字列を次のように書き換えてみましょう。
こうすることによるもうひとつの利点は、 同じ置換指示子を複数回使用する際にコードに引数を追加せずにすむことです。 例えば、次のようになります。
引数の交換を使うときには、
位置指定子 例2 埋める文字を指定する
上の例の出力は以下となります。 ......123 000000123 例3 位置指定子と他の指定との共用
上の例の出力は以下となります。 The tree contains 0005 monkeys 例4 sprintf: ゼロ埋めされた数値
例5 sprintf: 通貨フォーマット
上の例の出力は以下となります。 123.1 123.10 例6 sprintf: 科学的記法
上の例の出力は以下となります。 3.625e+8 参考
|