我知道如何从A到Z列出:
foreach (range('A', 'Z') as $char) {
echo $char . "\n";
}
Run Code Online (Sandbox Code Playgroud)
但是我如何从那里继续列出AA,AB,AC,AD,... AZ,BA,BB,BC等?
我做了一个快速的谷歌搜索,找不到任何东西,但我想这种方法会有所不同.
我想我可以通过使用for循环和内部字母的数组来做到这一点,尽管这种方式似乎有些粗鲁.
还有其他方法吗?
谢谢.
geo*_*org 15
PHP具有字符串增量运算符,它完全执行以下操作:
for($x = 'A'; $x < 'ZZ'; $x++)
echo $x, ' ';
Run Code Online (Sandbox Code Playgroud)
结果:
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 AA AB AC AD AE AF...
Run Code Online (Sandbox Code Playgroud)
参考:
当处理字符变量而不是C的算术运算时,PHP遵循Perl的约定.例如,在PHP和Perl $ a ='Z'中; $ A ++; 将$ a变为'AA',而在C a ='Z'; 一个++; 将a转换为'['('Z'的ASCII值为90,'['的ASCII值为91).请注意,字符变量可以递增但不会递减,即使只支持纯ASCII字母和数字(az,AZ和0-9).递增/递减其他字符变量无效,原始字符串不变.
http://php.net/manual/en/language.operators.increment.php