Мне нужно предложение о функции для счетчика php. Есть ли какая-либо функция для чисел с 5 цифрами как 00001 или 00123 … это число должно быть не случайным, а должно увеличивать значение предыдущего поля.
Если число равно $ n = '00001', существует функция для увеличения на единицу и получить 00002, а не 2?
Спасибо Ф.
$n2 = str_pad($n + 1, 5, 0, STR_PAD_LEFT);
Используйте str_pad()
, добавив 0
s ( третий параметр) влево ( четвертый параметр) старого числа $n
увеличенного на 1
( первый параметр), пока длина не будет равна 5 ( второй параметр).
$number = 1; $number++; echo str_pad($number, 5, "0", STR_PAD_LEFT); //00002
В качестве альтернативы, в случае, если вас это интересует, вы можете использовать sprintf, чтобы достаточно легко отнести это число от 0 до определенного числа.
$numbers = array(0,1,11,111,1111,11111,11111); $padded = array(); foreach($numbers as $num) $padded[] = sprintf('%1$05d', ++$num); print_r($padded);
PHP почти всегда имеет множество способов сделать то же самое. 🙂
Вам понадобится str_pad()
чтобы добавить к нулям ведущие нули.
$new_index = str_pad($index, 5, "0", STR_PAD_LEFT);
Где $index
ваш инкрементирующий индекс в круге, $new_index
– ваш индекс с ведущими нулями.