[php] printf sprintf vprintf vsprintf の違いについて(その2)

PHPでフォーマットした文字列の出力をおこなう際に使用する関数、
printf sprintf vprintf vsprintf の使い分けについて記載します。

今回は「sprintf」および「vsprintf」の使用方法を紹介します。
「printf」「sprintf」の使用方法は前回の記事をご参照ください。

sprintfの使用方法の例:

sprintfはprintfによく似ていますが、
printf はフォーマット済みの文字列を出力するのに対して、
sprintf はフォーマットされた文字列を返します。

sprintf単体では出力しませんので、以下のサンプルでは
sprintfから受け取った文字列をechoで出力をおこなっています。

上記の出力結果:
名前は、山田太郎で、年齢は30です。
名前は、大阪花子で、年齢は20です。

また引数で受け取った値をフォーマット出力する文字列内に複数使用する場合、
引数の番号を指定して複数回使い回すことも可能です。

その場合は以下のように記述します。

上記の出力結果:
名前は 山田 です。年齢は 50 です。
年齢は 50の 山田 です。

vsprintfの使用方法の例:

vsprintf は、sprintf と動作は同じですが、
可変長の引数ではなく配列が引数になります。

以下のように使用します。

上記の出力結果:
名前は、山田太郎で、年齢は30です。
名前は、大阪花子で、年齢は20です。

こちらもvsprintfで受け取った配列の引数を複数回使用する場合、
引数の番号を指定して使い回すことも可能です。

上記の実行結果:

名前は 山田太郎 です。年齢は 30 です。
年齢は 30の 山田太郎 です。
名前は 大阪花子 です。年齢は 20 です。
年齢は 20の 大阪花子 です。

木曜日担当:nishida



アプリ関連ニュース

お問い合わせはこちら

お問い合わせ・ご相談はお電話、またはお問い合わせフォームよりお受け付けいたしております。

tel. 06-6454-8833(平日 10:00~17:00)

お問い合わせフォーム