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()関数は非常に便利です。
-
PHPのsubstr()関数の使い方を徹底解説!文字列の一部を抽出する方法
PHPのsubstr()関数は、文字列の一部を抽出して返すための関数です。指定した開始位置から、指定した長さ分だけ文字列を取り出すことができます。構文substr(str, begin, len)パラメータstr − 対象となる元の文字列を指定します。begin − 文字列のどこから抽出を開始するかを指定します。正の数 − 文字列の先頭から数えて指定位置から抽出を開始します。負の数 − 文字列の末尾から数えて指定位置から抽出を開始します。0 − 文字列の最初の文字から抽出を開始します。len − 抽出する文字列の長さを指定します。省略した場合は、開始位置から文字列の末尾までが返されます。正の数
-
PHPのfprintf()関数とは?ストリームへのフォーマット済み文字列の書き込み方法を解説
PHPのfprintf()関数は、指定したストリーム(ファイルなど)にフォーマット済みの文字列を書き込むための関数です。printf()と同じ書式指定が使えますが、出力先をブラウザではなくファイルやストリームにできる点が大きな特徴です。ログの記録やデータファイルの生成などに活用できます。 構文 fprintf(stream, format, argument1, argument2, ...) パラメータ stream − 文字列の書き込み・出力先となるストリーム(通常はfopen()で取得したファイルポインタを指定します) format − 出力する文字列と、変数の埋め込み方(書式)を指定