数字の桁数を揃えたい場合に、先頭に0を埋めて桁数を調整するときがよくあります。今日はそんな桁数の調整について考えていきます。9月5日記事
目次
printfの方はそのまま出力することが可能なのに対して、sprintfは一度変数に代入しなければなりません。
先頭を0で埋めて、4桁で調整する場合
sprintf("%04d",$num); printf("%04d",$num);
元
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>先頭を0で埋める関数</title> </head> <body> <form action="confirm.php" method="post"> <label>数値入力</label> <input type="text" name="num"> <label>桁数</label> <input type="text" name="digit"> <input type="submit" name="submit"> </form> </body> </html>
送り先
<!DOCTYPE HTML> <html> <head> <meta charset="utf-8"> <title>先頭を0で埋める関数</title> </head> <body> <?php $num = $_POST["num"]; $digit = $_POST["digit"]; print $num."を".$digit."桁で調整すると<br><br>"; //printf("%04d",$num);が標準形 printf("%0".$digit."d",$num); print "<br>と<br>";//printfとprintは違う。 //別表記 //sprintf("%04d",$num);が標準形 $hoge = sprintf("%0".$digit."d",$num); print $hoge."です。"; ?> </body> </html>
結果: 3を4桁で調整すると 0003 と 0003です。すぐ表示させたい時はprintfを使い、変数に代入したいなぁ~と思う場合はsprintfがいいと思います。