根据连续顺序计算下一个变量名的最简洁方法?

Was*_*ace 1 php variables key sequential

希望我的标题解释好吧!这里有更多细节:

我正在创建一个存储键及其值的数组.例如.

test1 = hello
test2 = world
test3 = foo
Run Code Online (Sandbox Code Playgroud)

计算下一个键的最简洁方法是什么?假设我会知道第一部分是"测试",但我不知道最高值是多少.显然,在这种情况下,我希望它被称为'test4'.

在下面的示例中,我希望下一个键为'test46',因为它是下一个最高值:

test6 = blah
test45 = boo
test23 = far
Run Code Online (Sandbox Code Playgroud)

ale*_*lex 7

听起来你应该使用带有数字索引的数组.

但是你可以使用这样的代码......

$arr = array('test6', 'test45', 'test23');
$max = 0;

foreach($arr as $value) {
    $number = filter_var($value, FILTER_SANITIZE_NUMBER_INT);
    $max = max($max, $number);
}

$newKey = 'test' . ++$max; // string(6) "test46"
Run Code Online (Sandbox Code Playgroud)

CodePad.