如何在 PHP 中的特定索引处启动 foreach 循环
2022-08-30 08:45:25
我正在编写一个不是从第0个索引开始,而是从数组的第一个索引开始。有没有办法抵消循环的起点?foreach
我正在编写一个不是从第0个索引开始,而是从数组的第一个索引开始。有没有办法抵消循环的起点?foreach
Foreach
将重置阵列:
注意: 当 foreach 首次开始执行时,内部数组指针将自动重置为数组的第一个元素。这意味着您不需要在 foreach 循环之前调用 reset()。
要么使用循环(仅当这不是关联数组时)for
$letters = range('a','z');
for($offset=1; $offset < count($letters); $offset++) {
echo $letters[$offset];
}
或循环(可以是任何数组)while
$letters = range('a','z');
next($letters);
while($letter = each($letters)) {
echo $letter['value'];
}
或使用 LimitIterator
$letters = new LimitIterator(new ArrayIterator(range('a','z')), 1);
foreach($letters as $letter) {
echo $letter;
}
这允许您指定开始偏移量并通过构造函数计数。
以上所有内容都将输出字母 b 到 z 而不是 a 到 z