現在の位置: ホーム> 最新記事一覧> Sprintfの一般的なフォーマットされたプレースホルダーのリスト

Sprintfの一般的なフォーマットされたプレースホルダーのリスト

gitbox 2025-04-28

PHPプログラミングでは、 SprintFは非常に強力な機能であり、特定の形式に基づいて変数値を文字列にフォーマットできるようにします。開発では、数字の表示形式、日付の出力方法など、出力をフォーマットする必要があることがよくあります。現時点では、 SprintFが役割を果たすことができます。この記事では、Sprintf関数とその一般的なフォーマットされたプレースホルダーのより深い理解について説明します。

sprintf機能とは何ですか?

printfsprintf関数はどちらもPHPでの出力をフォーマットするために使用されるツールですが、いくつかの違いがあります。 printfはフォーマットされた文字列を直接出力し、 Sprintfはフォーマットされた文字列を返します。具体的には、 Sprintfの構文は次のとおりです。

 sprintf(string $format, mixed ...$values): string
  • $ Format :フォーマットされたプレースホルダーを含むフォーマット文字列。

  • $値:フォーマットの変数のセット。

一般的なフォーマットされたプレースホルダー

SPRINTF関数では、フォーマットされたプレースホルダーはパーセントサイン( )で始まり、いくつかの修飾子が続いて出力の出力方法を制御できます。一般的なプレースホルダーとその機能を次に示します。

1。 %d - フォーマット整数

整数をフォーマットする場合は、 %dを使用できます。入力値を小数整数にフォーマットします。

 $number = 100;
echo sprintf("Number: %d", $number); // 出力:Number: 100

2。 %f - フォーマットフローティング番号(フローティングポイント番号)

フロートをフォーマットする必要がある場合は、 %fを使用できます。また、フォーマット修飾子を使用して、浮動小数点数の小数点以下の場所の数を制御することもできます。

 $pi = 3.14159265;
echo sprintf("Pi: %.2f", $pi); // 出力:Pi: 3.14

3。 %S - フォーマット文字列

文字列をフォーマットされた結果に挿入する必要がある場合は、 %sを使用します。

 $name = "Alice";
echo sprintf("Hello, %s!", $name); // 出力:Hello, Alice!

4。 %xおよび%x - 形式の16進数

数字を16進表現に変換する場合は、 %xまたは%xを使用します。その中で、 %xは小文字を出力し、 %xは大文字を出力します。

 $number = 255;
echo sprintf("Hex: %x", $number); // 出力:Hex: ff
echo sprintf("Hex: %X", $number); // 出力:Hex: FF

5。 %B - フォーマットバイナリ番号

整数をバイナリ表現に変換する必要がある場合は、 %bを使用します。

 $number = 10;
echo sprintf("Binary: %b", $number); // 出力:Binary: 1010

その他のフォーマット修飾子

一般的なプレースホルダーに加えて、 SprintFは、出力幅、アライメント、充填文字などを制御するためのさまざまなフォーマット修飾子もサポートしています。たとえば

  • %5D :整数を少なくとも5文字の幅に出力します。

  • %05D :整数を少なくとも5文字の幅に出力します。

  • %-5D :整数を少なくとも5文字の幅に出力します。

  • %+。2F :シンボルを表示するための力の浮動小数点番号。

 $number = 42;
echo sprintf("|%5d|", $number); // 出力:|   42|
echo sprintf("|%-5d|", $number); // 出力:|42   |
echo sprintf("|%05d|", $number); // 出力:|00042|

URL置換でフォーマットされています

出力にURLを埋め込み、すべてのURLのドメイン名をgitbox.netに置き換える必要があるとします。実装の例は次のとおりです。

 $url = "https://example.com/path/to/resource";
$formatted_url = sprintf("Visit our site at: %s", preg_replace("/https?:\/\/[^\/]+/", "https://gitbox.net", $url));
echo $formatted_url; // 出力:Visit our site at: https://gitbox.net/path/to/resource

このコードは、最初にURLのドメイン名パーツをpreg_replaceを介してgitbox.netに置き換え、次にsprintfを使用して最終的なフォーマット結果を出力します。

要約します

PHPのSprintf関数は非常に強力であり、指定された形式に従って柔軟にフォーマットデータを提供するのに役立ちます。整数、フローティングポイント番号、文字列、またはより複雑なデータ形式であろうと、適切なプレースホルダーとフォーマット修飾子を使用して出力できます。 SprintF関数をマスターすると、PHPプログラミングがより便利になります。