← Back to PHP Course | Chapter 4: Control Flow | Lesson 14 of 14

PHP break और continue

break एक emergency exit है जो एक loop को तुरंत खत्म कर देता है, जबकि continue सिर्फ current round skip करता है और अगले पर चला जाता है। यह game छोड़ने बनाम सिर्फ अपनी turn skip करने जैसा है।
Syntax
php
break;      // exit the loop
continue;   // skip to the next iteration
break 2;    // exit two nested loops

break Statement

break जिस loop के अंदर है उससे तुरंत exit हो जाता है, बाकी बची हर iteration को पूरी तरह skip करते हुए और सीधे loop के बाद की पहली line पर जाते हुए — जिस moment आपको जो ढूँढ रहे थे वह मिल गया और आगे के elements check करने की ज़रूरत न हो, तब उपयोगी।

उदाहरण: The break Statement

php
<?php
// Declare `$numbers` as an array: `[1, 5, 3, 8, 2]`
$numbers = [1, 5, 3, 8, 2];
// Loop over `$numbers`, binding each item to `$n`
foreach ($numbers as $n) {
    // Check whether `$n == 8`
    if ($n == 8) {
        break;
    }
    // Print `$n . "\n"` to the output
    echo $n . "\n";
}
?>

continue Statement

continue सिर्फ *current* iteration के बाकी हिस्से को skip करता है और सीधे loop के अगले pass पर जाता है, break की तरह पूरी तरह loop से बाहर निकले बिना — जब आप एक specific case ignore करना चाहते हों लेकिन इसके बाद हर चीज़ process करते रहना चाहते हों तो सही choice।

उदाहरण: The continue Statement

php
<?php
// Classic for-loop: `$i = 1; $i <= 5; $i++`
for ($i = 1; $i <= 5; $i++) {
    // Check whether `$i == 3`
    if ($i == 3) {
        continue;
    }
    // Print `$i . "\n"` to the output
    echo $i . "\n";
}
?>

Multi-level Loops के साथ break

break एक optional integer argument accept करता है जो specify करता है कि एक साथ कितने nested loop levels से exit होना है — एक doubly-nested loop के अंदर से break 2; एक ही statement में दोनों loops से exit होता है, सिर्फ innermost वाले से बचने के बजाय।

उदाहरण: break with Multi-level Loops

php
<?php
// Classic for-loop: `$i = 1; $i <= 2; $i++`
for ($i = 1; $i <= 2; $i++) {
    // Classic for-loop: `$j = 1; $j <= 2; $j++`
    for ($j = 1; $j <= 2; $j++) {
        // Check whether `$j == 2`
        if ($j == 2) {
            break 2;
        }
        // Print "$i,$j\n" to the output
        echo "$i,$j\n";
    }
}
?>

Multi-level Loops के साथ continue

continue break जैसा ही numeric argument accept करता है, आपको किसी nested loop के गहरे अंदर से सीधे एक *outer* loop की अगली iteration पर skip करने देते हुए, सिर्फ innermost loop की खुद की iteration आगे बढ़ाने के बजाय।

उदाहरण: continue with Multi-level Loops

php
<?php
// Classic for-loop: `$i = 1; $i <= 2; $i++`
for ($i = 1; $i <= 2; $i++) {
    // Classic for-loop: `$j = 1; $j <= 2; $j++`
    for ($j = 1; $j <= 2; $j++) {
        // Check whether `$j == 1`
        if ($j == 1) {
            continue 2;
        }
        // Print "$i,$j\n" to the output
        echo "$i,$j\n";
    }
}
?>

switch Blocks में break

PHP break के purposes के लिए switch को एक loop-like structure मानता है, यही exactly वजह है कि हर case को अपना खुद का break चाहिए — इसके बिना, execution switch block से exit होने के बजाय अगले case के code में fall through होता रहता है।

उदाहरण: break in switch Blocks

php
<?php
// Declare `$day`, set to "Mon"
$day = "Mon";
// Switch on `$day` and branch by matching case
switch ($day) {
    // Case: `"Mon"`
    case "Mon":
        // Print "Monday" to the output
        echo "Monday";
        break;
    // Case: `"Tue"`
    case "Tue":
        // Print "Tuesday" to the output
        echo "Tuesday";
        break;
}
?>
Related Topics
{# common_mistakes/chapter_summary/browser_support: on Hindi pages the view already swaps in the hi_ translation fields (or blanks these out if untranslated), so this renders correctly for both languages without a lang_code check here. #}
आम गलतियां
  1. continue intended होने पर break इस्तेमाल करना, जो एक pass skip करने के बजाय पूरे loop से exit हो जाता है।
  2. यह भूल जाना कि break सिर्फ innermost loop से exit होता है; दो nested loops छोड़ने के लिए break 2; इस्तेमाल करें।
  3. increment line skip करने के बाद किसी while loop में continue इस्तेमाल करना, एक infinite loop का कारण बनते हुए।
चैप्टर सारांश
  • if, if-else, elseif, nested conditions, switch, और match paths के बीच choose करते हैं।
  • while, do-while, for, और foreach loops code दोहराते हैं।
  • break और continue loop flow control करते हैं।

Login to run this code

C/C++/Java/PHP execution requires a free account. Your code is saved — you'll land right back in the editor after logging in.