【发布时间】:2015-12-29 23:46:39
【问题描述】:
我想跳过foreach循环的第一个入口,我知道一种方法,但是它使用了很多代码行,我想知道是否有更简单的方法:
$i = 0;
foreach($url AS $u) {
if($i!=0) $cats[check_url($u)] = $u;
$i++;
}
有没有更好更正式的方式?
【问题讨论】:
-
foreach($url as $k=>$u){ if($k==0)continue; ... }或者只是删除数组中的第一个值。或者使用 for 循环代替并从 1 开始。 -
如何删除数组中的第一个值?
-
@JackQueen 使用 unset(array[0]);这样做
-
@JackQueen 要正确删除数组的第一个值,请使用
array_shift()。如果需要使用,将其保存到变量中,如果不需要,只需使用函数即可。要删除最后一个元素,请使用array_pop()。使用数组函数! -
@Zapp 不应该工作,他的
$i++在循环内,所以使用continue最终会跳过所有项目。