我想跳过foreach循环的第一个条目,我知道一种方法,但它使用了很多行代码,我想知道是否有更简单的方法:
$i = 0;
foreach($url AS $u) {
if($i!=0) $cats[check_url($u)] = $u;
$i++;
}
有更好的官方方式吗?
答案 0 :(得分:1)
另一种可能的方法是使用PHP的内置array_shift()函数在循环之前弹出数组中的第一项。
如果您不确定如何将$ url数组编入索引,只需使用unset($url[0])
删除索引[0]可能会或可能不会解决问题。例如,如果通过关联索引$ url,它可能看起来更像是:
$url['first'] = "a value";
$url['second'] = "some other value";
$url['third'] = "a different value";
要确定您排除第一个“索引”元素,无论与之关联的键是什么,您都可以像这样使用array_shift():
array_shift($url);
这会弹出第一个元素并重置()数组指针。
在此之后,您可以像平常一样执行foreach循环。
答案 1 :(得分:0)
如果你有$url
的数字键,你可以这样做:
foreach($url AS $k => $u) {
if($k) $cats[check_url($u)] = $u;
}
但是如果你的阵列有非数字键,我认为你拥有的是最好的方法!