PHP - breakの引数で脱出するループの段数を指定
foreach だけ抜ける。
<?php do{ $list = array(1,2,3,4,5); foreach($list as $item){ echo $item."\n"; if($item > 2){ break; } } echo "Hey\n"; }while(false);
C:\> php break1.php 1 2 3 Hey
引数 2 を指定しているので、do 〜 while も抜ける。
<?php do{ $list = array(1,2,3,4,5); foreach($list as $item){ echo $item."\n"; if($item > 2){ break 2; } } echo "Hey\n"; }while(false);
C:\> php break2.php 1 2 3
単なる break で一番外側に出られると勘違いしたバグっぽいスクリプトが、
今日もどこかで動いているかも...