使用PHP获取字母表中下一个字母的最有效的方法
给定任何字符从一个到Z,什么是最有效的方式来获取字母下一个字母使用PHP?
在我看来,这样做的最有效的方法就是增加stringvariables。
$str = 'a'; echo ++$str; // prints 'b' $str = 'z'; echo ++$str; // prints 'aa'  如所看到的增加'z'给予'aa'如果你不想要这个,而是想重新设置一个'a'你可以简单地检查结果string的长度,如果>1重置它。 
 $ch = 'a'; $next_ch = ++$ch; if (strlen($next_ch) > 1) { // if you go beyond z or Z reset to a or A $next_ch = $next_ch[0]; } 
这取决于你打Z时想做什么,但是你有几个select:
 $nextChar = chr(ord($currChar) + 1); // "a" -> "b", "z" -> "{" 
 你也可以使用PHP的range()函数: 
 $chars = range('a', 'z'); // ['a', 'b', 'c', 'd', ...] 
 那么,这取决于你想要做什么“边缘案件”。 当字符是z或Z时,你期望什么结果? 你想要同一个案的下一个字母,还是下一个字母? 
在不知道答案的情况下,对于非常基本的情况,你可以这样做:
 $next_character = chr(ord($current_character) + 1); 
 但是当你在Z这会给你[ ,而z会给你{ ,根据ASCII值。 
按照评论编辑:
如果你需要同一个案例的下一个字符,你可以在上面的行之后添加简单的检查:
 if ($next_character == '[') $next_character = 'A'; else if ($next_character == '{') $next_character = 'a'; 
这些操作非常简单,在这种情况下我真的不用担心效率问题。
如何使用ord()和chr() ?
 <?php $next = chr(ord($prev)+1); ?> 
由于在这种情况下我只关心小写字母,所以我将根据下面的答案使用下面的代码:
 function nextLetter(&$str) { $str = ('z' === $str ? 'a' : ++$str); } 
感谢您的帮助,伙计们!
 $val = 'z'; echo chr((((ord($val) - 97) + 1) % 26) + 97); 
好,易于 :-)
创build所有字母的数组,search现有的字母并返回其下一个字母。 如果你到达最后一个字母返回第一个字母。