我就用一些代码开始:最快的方式
$characterset = 'abcdefg';
$character = 'a';
说我有两个变量,characterset
和character
,我想下一个character
,所以我所做的:
$characterset = 'abcdefg';
$character = 'a';
$ncharacter = $characterset[ strpos($characterset, $character) + 1 ];
这工作,但我使用的是具有这样做上千次per/second
的方法,以及使用XDebug + WebGrind
结果是很多很多呼吁strpos
,使得功能去很多比它慢应该走,我意识到在语言做math
比做函数调用做数学题快了,我已经尝试使用:
$character = 'a';
$ncharacter = chr(ord($character) + 1);
而且,将工作,但是这给了我太多字符如果我想确保它不是像:
或其他类似+1
这样的字符,它会是一堆有条件的参数,使它变慢,所以我正在寻找的是一种便宜的方式,以便character -> nextcharacter (determined from characterset)
不会使用大量资源,WebGrind
的基准是首选。
感谢:-)
让我知道,如果我的解决方案工作。如果不是,那么它有什么问题。 – Learner
@RyanVincent但是在字符集中给了我一堆不需要的字符,并且完全删除了字符集,我看到了与字符的关系:P – Jek