sprintf関数の使い方

sprintf関数の使い方 PHP言語リファレンス
sprintf関数の使い方
zucksadnetwork

sprintf関数とは?

sprintf関数は、PHPで指定したフォーマットに従って文字列を生成するための関数です。

sprintf関数の概要

sprintf関数の基本的な書式は、次のとおりです。

PHP

string sprintf(string $format, mixed $args);
  • string $format:フォーマット文字列
  • mixed $args:フォーマット文字列に埋め込む値

フォーマット文字列は、%(パーセント)で始まり、その後にフォーマット指定子を記述します。フォーマット指定子には、文字列、数値、日付、時刻など、さまざまな種類があります。

sprintf関数の書き方

sprintf関数の書き方は、次のとおりです。

  1. フォーマット文字列を作成します。
  2. フォーマット文字列に埋め込む値を用意します。
  3. sprintf関数を呼び出して、フォーマットされた文字列を取得します。

PHP

// フォーマット文字列の作成
$format = "姓名:%s 年齢:%d";

// 値の用意
$name = "山田 太郎";
$age = 20;

// sprintf関数の呼び出し
$str = sprintf($format, $name, $age);

// フォーマットされた文字列の取得
echo $str;

このコードを実行すると、次の出力になります。

姓名:山田 太郎 年齢:20

sprintf関数の作成・使用方法

sprintf関数は、次の2つの方法で使用できます。

  • echoprint などの出力関数で出力する
  • 変数に格納して、後で使用する

PHP

// echo で出力する
$format = "姓名:%s 年齢:%d";
$name = "山田 太郎";
$age = 20;

$str = sprintf($format, $name, $age);
echo $str;

// 変数に格納する
$format = "姓名:%s 年齢:%d";
$name = "山田 太郎";
$age = 20;

$str = sprintf($format, $name, $age);

// 変数を後で使用する
echo $str;

sprintf関数のスクリプトサンプル

次のスクリプトは、sprintf関数を使用して、さまざまなフォーマット文字列を生成しています。

PHP

// 文字列のフォーマット
$format = "姓名:%s 年齢:%d";
$name = "山田 太郎";
$age = 20;

$str = sprintf($format, $name, $age);
echo $str;

// 数値のフォーマット
$format = "金額:%.2f 円";
$price = 1234.5678;

$str = sprintf($format, $price);
echo $str;

// 日付のフォーマット
$format = "日付:%Y年%m月%d日";
$date = new DateTime();

$str = sprintf($format, $date);
echo $str;

// 時刻のフォーマット
$format = "時刻:%H時%M分%S秒";
$time = new DateTime();

$str = sprintf($format, $time);
echo $str;

このスクリプトを実行すると、次の出力になります。

姓名:山田 太郎 年齢:20
金額:1,234.57 円
日付:2024年01月02日
時刻:16時45分00秒

sprintf関数特有の事柄・注意点

  • フォーマット文字列に埋め込む値は、文字列、数値、配列、オブジェクトなど、さまざまな種類の値を指定できます。
  • フォーマット指定子は、PHPマニュアルを参照してください。
  • フォーマット文字列にエスケープシーケンスを使用する場合は、%s ではなく、%\s を指定する必要があります。

sprintf関数のまとめ

sprintf関数は、指定したフォーマットに従って文字列を生成するための便利な関数です。PHPの初心者でも使いやすい

PHP言語リファレンス制御構造
PHPプログラミング図鑑をフォローする
PHPプログラミング図鑑