Для вставки кода используйте HTML-теги
<pre><code class="php">ваш код</code></pre>

Добавить комментарий

Такой e-mail уже зарегистрирован. Воспользуйтесь формой входа или введите другой.

Вы ввели некорректные логин или пароль

Извините, для комментирования необходимо войти.

6 комментариев

по хронологии
по рейтингу сначала новые по хронологии

Спасибо за тесты )))

Дмитрий

Первый вариант -- один большой косяк. Уж если на то пошло, то работать будет

function numberFormat($digit, $width)
{
if(strlen($digit) == $width)
{
return $digit;
}
else
{
while(strlen($digit) < $width)
{
$digit = '0' . $digit;
}
return $digit;
}
}

Хотя зачем это нужно, когда есть str_pad() и sprintf()

Ваш код делает тоже самое, но длиннее, с лишним условием и 2 раза определяется длина строки.

Никто не мешает вам использовать str_pad() и sprintf()

Дмитрий

И если уж на то пошло, то самым лишним и затратным здесь будет цикл.

А про str_pad() и sprintf() я уже высказался.

Посмотрите в песочнице - https://kobzarev.com/sandbox/leading-zeroes/

Добавил еще один способ с str_repeat()