はじめに
sprintf()のまとめです。文字数や桁数の指定が可能です。
自分用のまとめなので間違いや自分が完全に理解しているところに関しては省略して書いていることもあります。ご了承お願いします。
整数で使ってみる
さっそく使ってみます。指定するものが文字列か数字によって変わります。
整数でやってみます。
$num = 500;
$newNum = sprintf('[%5d]', $num); //整数は%d,5は5桁出力
echo $newNum;
[ 500]
ちなみに[]は必要ありません、あったほうがわかりやすいですよね。
空白を0で埋めたいなら以下のように桁数の前に0をつけます。
$num = 500;
$newNum = sprintf('[%05d]', $num); //整数は%d,5は5桁出力
echo $newNum;
[00500]
また、左詰で出力したいなら先頭に-をつけます。
$num = 500;
$newNum = sprintf('[%-5d]', $num); //整数,5は5桁出力
echo $newNum;
[500 ]
浮動小数点でやってみる
浮動小数点は%fになります。
$num 123.456
$newNum = sprintf('[%7.2f]', $num); //浮動小数点、7桁出力でうち2桁が小数点
echo $newNum;
[ 123.46]
もし%5.2fとしても小数点含め6桁になるのでその場合は123.46と出力されます。
もちろんこちらも先頭に-を付けることで左づめにすることが可能です。
文字列でやってみる
文字列は%sになります。
$name = 'keia';
$newName = sprintf([%15s]);
echo $newName;
[ keia]
終わりに
出力する桁数を指定したい時にめっちゃ便利ですね。