in reply to exiting a if loop
This does what you asked for and as you can see you don't need the exit statements. Perl evaluates the "if/else if" statements in turn until one of the conditions is true. It then executes the block immediately following that statement and then jumps to the end of the entire conditional. Thus it only does the "first" conditional block that it can. Several other languages don't work that way (c's switch statement for instance needs breaks) and that may have confused you, but Perl already does what you want by default.if(HOLIDAY){ $check = TRUE; } elsif ( $time <= 1800){ $check = TRUE; }
You realise of course that you example you gave can be written more succintly as:
If this hasn't covered the whole subject to your satisfaction, if you post more of what you're trying to do then we can elaborate.$check = TRUE if ((HOLIDAY) or ($time <= 1800))
update As le and flyfishing have pointed out I got the else if thing wrong. I've changed the node so that it reads properly.
Nuance
Baldrick, you wouldn't see a subtle plan if it painted itself purple and danced naked on top of a harpsichord, singing "Subtle plans are here again!"
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
RE: Re: exiting a if loop
by le (Friar) on Jun 06, 2000 at 18:11 UTC | |
by nuance (Hermit) on Jun 06, 2000 at 18:31 UTC | |
by flyfishin (Monk) on Jun 06, 2000 at 19:01 UTC | |
by le (Friar) on Jun 06, 2000 at 19:06 UTC | |
|
RE: Re: exiting a if loop
by turnstep (Parson) on Jun 06, 2000 at 21:37 UTC |