我怎样才能打破外部循环与PHP?
我期待在PHP中打破/ foreach循环。
这可以在ActionScript中完成,如下所示:
top : for each(var i:MovieClip in movieClipArray) { for each(var j:String in nameArray) { if(i.name == j) break top; } }
什么是PHP的等价物?
PHP手册说
break接受一个可选的数字参数,告诉它有多less嵌套的封闭结构被分解出来。
break 2;
你可以使用break 2;
同时打破两个循环。 这不像你的例子与“命名”循环相同,但它会做的伎俩。
你可以只使用一个break-n语句:
foreach(...) { foreach(...) { if(i.name == j) break 2; //Breaks 2 levels, so breaks outermost foreach } }
如果你在php> = 5.3,你可以使用标签和goto
,类似在行动脚本:
foreach(...) { foreach(...) { if(i.name == j) goto top; } } top :
但是必须小心使用goto。 后藤是邪恶的 (认为不好的做法)
$i = new MovieClip(); foreach($movieClipArray as $i) { $nameArray = array(); foreach($nameArray as $n) if($i->name==$n) break 2; }
使用goto?
for($i=0,$j=50; $i<100; $i++) { while($j--) { if($j==17) goto end; } } echo "i = $i"; end: echo 'j hit 17';