在PHP中创建字母数字范围

tre*_*ake 3 php arrays range

我尝试以这种方式使用range():

echo '<pre>'. print_r(range('A1', 'A4'), 1) .'</pre>';
Run Code Online (Sandbox Code Playgroud)

创建此数组:

A1
A2
A3
A4
Run Code Online (Sandbox Code Playgroud)

但实际上它返回了:

Array
(
    [0] => A
)
Run Code Online (Sandbox Code Playgroud)

阅读文档会确认这种用途不是预期用途。

我可以使用以下代码获得所需的结果:

$myRange = ['A1', 'A2', 'A3', 'A4'];
Run Code Online (Sandbox Code Playgroud)

但是使用4时感觉效率很低,虽然还不错,但是当任务变成三位数时,任务就变成了Herculian。PHP内置了一些可以处理字母数字范围生成的东西吗?

谢谢,

谢谢

dWi*_*der 5

您可以使用array_map和range 来做到这一点:

$prefix = "A";
$arr = array_map(function ($e) use ($prefix) { return $prefix . strval($e);}, range(1,4));
Run Code Online (Sandbox Code Playgroud)

或作为功能:

function alphanumericRange($prefix, $start, $end)
{
    return array_map(function ($e) use ($prefix) {return $prefix . strval($e);}, range($start, $end));
}
Run Code Online (Sandbox Code Playgroud)