PHPでのゼロパディング
今更という感じはするけれど、例のごとく備忘録。
sprintf
本来の使い方とは違うものの、第一引数で桁数を指定すればゼロパディングができる。
$val = "3"; $val = sprintf("%02d", $val); print $val // "03" $val = "123"; $val = sprintf("%05d", $val); print $val // "00123"
str_pad
左だけでなく右、及び両方にパディングするときはこれ。
0だけでなく好きな文字で埋めることができる。
※公式ドキュメント「str_pad」より
$input = "Alien"; echo str_pad($input, 10); // "Alien " echo str_pad($input, 10, "-=", STR_PAD_LEFT); // "-=-=-Alien" echo str_pad($input, 10, "_", STR_PAD_BOTH); // "__Alien___" echo str_pad($input, 6 , "___"); // "Alien_"
簡単なんだけど忘れがち。