Incrementing or decrementing numbers in PHP is easy with the ++ and -- operators but it can be difficult to set the precision of the numbers. The str_pad() can be useful for concatenating a string to the beginning or end of the incrementing number to simulate a different precision.
Good example, we want to increment 001 to 002, 003, 004:
$numbers = [];
for($i = 1; $i <= 4; $i++){
$numbers[] = str_pad($i, 3, '0', STR_PAD_LEFT);
}
print_r($numbers);
$numbers[0] => '001',
$numbers[1] => '002',
$numbers[2] => '003',
$numbers[3] => '004',
Bad example, we want to increment 001 to 002, 003, 004 but if we set $i = 001 in the for() loop to start with, 001 will be converted to 1 and the incrementing will return: 1, 2, 3, 4 etc...
$numbers = [];
for($i = 001; $i <= 4; $i++){
$numbers[] = $i;
}
print_r($numbers);
$numbers[0] => 1,
$numbers[1] => 2,
$numbers[2] => 3,
$numbers[3] => 4,