if
ไม่ใช่โครงสร้างลูปดังนั้นคุณไม่สามารถ "แยกออกจากมัน"
อย่างไรก็ตามคุณสามารถแบ่งออกมาจากโดยเพียงแค่การเรียกร้องforeach
break
ในตัวอย่างของคุณมันมีผลที่ต้องการ:
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();
}
เพียงเพื่อความสมบูรณ์สำหรับผู้อื่นที่สะดุดเมื่อคำถามนี้มองหาคำตอบ ..
break
รับอาร์กิวเมนต์ที่เป็นทางเลือกซึ่งกำหนดจำนวนโครงสร้างลูปที่ควรทำลาย ตัวอย่าง:
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 "!";
ผลลัพธ์ที่ได้:
1 3 2 1!