PHP 指定桁数まで0埋めorスペース埋めで表示する

0埋めorスペース埋めをsprintfにて実装

よく0埋めで表記をするフィールド(こんなの→000000012)を見かけますが、
PHPである桁数まで任意の文字・数字で埋めて表示する方法です。

sprintfを利用してフォーマットを整える

0埋め5桁で表示する

echo sprintf("%05d", 123);     // "00123"

0埋め10桁で表示する

echo sprintf("%010d", 123);    // "0000000123"

0埋め10桁文字列で表示する

echo sprintf("%010s", "abc");  // "0000000abc"

埋める文字を指定しないとスペース埋めで表示する

echo sprintf("%10s", "abc");   // "       abc"
echo sprintf("%10d", 123);     // "       123"

マイナスを指定すると左詰めで表示される

echo sprintf("%-10s", "abc");  // "abc       "
echo sprintf("%-10d", 123);    // "123       "

数字列の場合は文字列は表示できない

echo sprintf("%010d", "hoge"); // "0000000000"

PHP manual sprintf
http://php.net/manual/ja/function.sprintf.php



コメントを残す