- 01
- 02
- 03
- 04
- 05
- 06
- 07
- 08
- 09
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
<?php
/*
desc:
Инкремент строки типа '000'
Символы от '0' до 'z'
*/
function levelIncrease($lvl)
{
for($i = 2, $ng = 0; $i >= 0; $i--) {
$g = ord($lvl[$i]);
if($i == 2)
++$g;
$g += $ng;
$ng = 0;
if($g > 57 && $g < 97)
$g = 97;
else if($g > 122) {
$diff = $g - 122;
$g = 48 + $diff - 1;
$ng = ceil($diff / 36);
}
$lvl[$i] = chr($g);
if($ng == 0)
break;
}
return $lvl;
}
echo levelIncrease('aaa'); // aab