9.2. The next Statement

Like last, next alters the ordinary sequential flow of execution. However, next causes execution to skip past the rest of the innermost enclosing looping block without terminating the block.[2] It is used like this:

[2] If there's a continue block for the loop, which we haven't discussed, next goes to the beginning of the continue block rather than the end of the block. Pretty close.

while (something) {
    firstpart;
    firstpart;
    firstpart;
    if (somecondition) {
        somepart;
        somepart;
        next;
    }
    otherpart;
    otherpart;
    # next comes here
}

If somecondition is true, then somepart is executed, and otherpart is skipped around.

Once again, the block of an if statement doesn't count as a looping block.

Get Learning Perl, Second Edition now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.