Пошерить
Плюсануть
Отправить
Вотсапнуть

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

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

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

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

1. Нажимая на кнопку "Отправить", я даю согласие на обработку персональных данных.

2. Для вставки кода используйте специальные теги [code lang="php"]ваш код[/code]

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

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

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

Дмитрий

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

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/

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