Дополнение числа нулями до заданной длины
2016-08-08
Формат int не позволяет начинать строку с нуля, поэтому, когда возникает необходимость в таком числе (например, 000023), используем следующий код.
Что бы ни случилось, всегда лучше использовать стандартные функции, в этом случае str_pad, sprintf, str_repeat.
str_pad
<?php
$str = '1';
echo str_pad($str, 4, '0', STR_PAD_LEFT);
// Выводит "0001"
?>
Велосипед
<?php
function numberFormat($digit, $width) {
while(strlen($digit) < $width) {
$digit = '0' . $digit;
}
return $digit;
}
?>
sprintf()
<?php
$str = '1';
echo sprintf("%04d", $str);
// Выводит "0001"
?>
str_repeat()
<?php
$str = '1';
echo str_repeat( '0', $width - strlen( $str ) ) . $str;
// Выводит "0001"
?>
Отсюда