PHP
 Computer >> コンピューター >  >> プログラミング >> PHP

PHPのvsprintf()関数とは?構文・書式指定子・使用例を徹底解説

PHPのvsprintf()関数は、フォーマット(書式)文字列に基づいて整形された文字列を返す関数です。sprintf()関数とよく似ていますが、引数を個別に渡すのではなく、配列としてまとめて渡す点が大きな特徴です。

基本構文

vsprintf(format, argarray)

パラメータ

  • format ― 文字列と、その中で変数をどのように整形するかを指定します。

formatに指定できる主な書式指定子は以下の通りです。

  • %% ― パーセント記号(%)そのものを返します

  • %b ― 2進数

  • %c ― ASCII値に対応する文字

  • %d ― 符号付き10進数(負・ゼロ・正)

  • %e ― 小文字の指数表記による科学技術表記(例:1.2e+2)

  • %E ― 大文字の指数表記による科学技術表記(例:1.2E+2)

  • %u ― 符号なし10進数(ゼロ以上)

  • %f ― 浮動小数点数(ロケール設定を考慮)

  • %F ― 浮動小数点数(ロケール設定を考慮しない)

  • %g ― %e と %f のうち短い方

  • %G ― %E と %f のうち短い方

  • %o ― 8進数

  • %s ― 文字列

  • %x ― 16進数(小文字)

  • %X ― 16進数(大文字)

  • argarray ― フォーマット文字列内の「%」記号の位置に挿入される値を格納した配列を指定します。

戻り値

vsprintf()関数は、指定された書式に従って整形された文字列を返します。なお、直接出力は行わないため、表示したい場合はechoやprintなどで出力する必要があります。

使用例

以下はvsprintf()関数を使った具体的なコード例です。

<?php
$a = 6567;
$b = 8976;
$res = vsprintf("%f\n%f", array($a, $b));
echo $res;
?>

実行結果

6567.000000
8976.000000

この例では、変数$aと$bの値が配列として渡され、それぞれ「%f」の位置に浮動小数点数として整形されて出力されます。このように、複数の値を一度に整形したい場合にvsprintf()関数は非常に便利です。

  1. PHPのsubstr()関数の使い方を徹底解説!文字列の一部を抽出する方法

    PHPのsubstr()関数は、文字列の一部を抽出して返すための関数です。指定した開始位置から、指定した長さ分だけ文字列を取り出すことができます。構文substr(str, begin, len)パラメータstr − 対象となる元の文字列を指定します。begin − 文字列のどこから抽出を開始するかを指定します。正の数 − 文字列の先頭から数えて指定位置から抽出を開始します。負の数 − 文字列の末尾から数えて指定位置から抽出を開始します。0 − 文字列の最初の文字から抽出を開始します。len − 抽出する文字列の長さを指定します。省略した場合は、開始位置から文字列の末尾までが返されます。正の数

  2. PHPのfprintf()関数とは?ストリームへのフォーマット済み文字列の書き込み方法を解説

    PHPのfprintf()関数は、指定したストリーム(ファイルなど)にフォーマット済みの文字列を書き込むための関数です。printf()と同じ書式指定が使えますが、出力先をブラウザではなくファイルやストリームにできる点が大きな特徴です。ログの記録やデータファイルの生成などに活用できます。 構文 fprintf(stream, format, argument1, argument2, ...) パラメータ stream − 文字列の書き込み・出力先となるストリーム(通常はfopen()で取得したファイルポインタを指定します) format − 出力する文字列と、変数の埋め込み方(書式)を指定