我尝试了不同的SPL迭代器组合,但我找不到一种方法来实现迭代器数组的递归迭代。这是我正在寻找但使用生成器实现的模拟:
private function recursiveIterator(): iterable
{
$iterators = [
$this->firstIterator(),
$this->secondIterator(),
];
foreach ($iterators as $iterator) {
yield from $iterator;
}
}
有没有办法用SPL迭代器编写上述代码的模拟?
提前致谢!
P.S。基本上代码会使值数组变得扁平化
[[1, 2], [10, 20]]
到
[1, 2, 10, 20]