我想跳过foreach循环的第一个条目,我知道一种方法,但它使用了很多行代码,我想知道是否有更简单的方法:
$i = 0;
foreach($url AS $u) {
if($i!=0) $cats[check_url($u)] = $u;
$i++;
}
还有更好的更正式的方式吗?
另一种可能的方法是使用PHP内置的array_shift()函数在循环之前从数组中弹出第一项。
如果您不确定$url数组是如何索引的,那么简单地用unset($url[0])
删除index[0]可能会解决问题,也可能不会解决问题。例如,如果$url按关联进行索引,它可能看起来更像这样:
$url['first'] = "a value";
$url['second'] = "some other value";
$url['third'] = "a different value";
为了确定您排除了第一个"索引"元素,无论与之相关的键是什么,您可以使用array_shift(),如下所示:
array_shift($url);
这会弹出第一个元素并重置()数组指针。
在这之后,你可以像往常一样进行你的前臂循环。
如果你有$url
的数字键,你可以简单地这样做:
foreach($url AS $k => $u) {
if($k) $cats[check_url($u)] = $u;
}
但是如果你的数组有非数字键,我认为你拥有的是最好的方法!