if không phải là một cấu trúc vòng lặp, vì vậy bạn không thể "thoát ra khỏi nó".
Tuy nhiên, bạn có thể thoát ra foreachbằng cách gọi đơn giản break. Trong ví dụ của bạn, nó có tác dụng mong muốn:
foreach($equipxml as $equip) {
$current_device = $equip->xpath("name");
if ( $current_device[0] == $device ) {
// found a match in the file
$nodeid = $equip->id;
// will leave the foreach loop and also the if statement
break;
}
this_command_is_not_executed_after_a_match_is_found();
}
Chỉ để hoàn thành cho những người khác vấp phải câu hỏi này để tìm câu trả lời ..
breaknhận một đối số tùy chọn, xác định có bao nhiêu cấu trúc vòng lặp cần phá vỡ. Thí dụ:
foreach (array('1','2','3') as $a) {
echo "$a ";
foreach (array('3','2','1') as $b) {
echo "$b ";
if ($a == $b) {
break 2; // this will break both foreach loops
}
}
echo ". "; // never reached
}
echo "!";
Kết quả đầu ra:
1 3 2 1!