我正在创建一个类似于MySql的自动增量的函数,但我正在使用一个值数组
$array = array('a','b','c','d','e','f','g','h','i','j','k','l','m',
'n','o','p','q','r','s','t','u','v','w','x','y','z',
'A','B','C','D','E','F','G','H','I','J','K','L','M',
'N','P','Q','R','S','T','U','V','W','X','Y','Z',
'1','2','3','4','5','6','7','8','9','0',
'~',-','_');
Run Code Online (Sandbox Code Playgroud)
我想根据这个数组得到下一个字符串.说我有"aH?",所以我的下一个字符串应该是,"aIa"或者如果我的字符串是"???"这样我的巢字符串应该是"aaaa".请建议我最好,最快的方法.
我想在实践中最好的方法是在PHP中使用鲜为人知的自动增量属性:它也可以用于字符串:
$a = 'a';
echo ++$a; // 'b'
echo ++$a; // 'c'
$a = 'z';
echo ++$a; // 'aa'
echo ++$a; // 'ab'
$a = 'az';
echo ++$a; // 'ba'
echo ++$a; // 'bb'
$a = 'zz';
echo ++$a; // 'aaa'
echo ++$a; // 'aab'
Run Code Online (Sandbox Code Playgroud)
事实上,人们甚至可以混合使用字母和数字,如下所示:
$ld = 'a9z9';
echo ++$ld; // 'b0a0'
$ld = 'z9z9';
echo ++$ld; // 'aa0a0'
Run Code Online (Sandbox Code Playgroud)
如您所见,在溢出(++9,++z)的情况下,下一个符号(从右到左)也将增加.如果它是最左边的(并且等于z),它就变成'aa'.
最后要说的是:案件得以保留.以便...
$mixin = 'Zz9Zz9Zz9';
echo ++$mixin; // 'AAa0Aa0Aa0'
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
107 次 |
| 最近记录: |