How do I break an outer loop from an inner one in Perl?
Suppose I have a piece of Perl code like: foreach my $x (@x) { foreach my $y (@z) { foreach my $z (@z) { if (something()) { # I want to break free! } # do stuff } # do stuff } # do stuff } If something() is true, I would like to break ('last') all the loops. how can I do that? I thought of two options, both of which I don't like: Using something GOTO Adding a boolean variable which will mark something() is true, check this var in each of the loops before they resume and last() if it's true. Any suggestions or thoughts? Thanks. Use a label: OUTER: foreach my $x (@x) { foreach my $y (@z) {