On 5/5/09 8:55 PM, "Clancy" <clanc...@cybec.com.au> wrote:

> On Tue, 05 May 2009 14:13:23 -0400, rob...@interjinn.com (Robert Cummings)
> wrote:
> 
>> On Tue, 2009-05-05 at 13:56 -0400, Tom Worster wrote:
>>> there's a control structure i wish php had: a simple block that you can
>>> ...........
> 
>> But PHP 5.3 introduces goto:
>> 
>> <?php
>> 
>> header:
>> 
>>    if( $something ) ...
>> 
>>    goto body;
>> 
>> body:
>> 
>>    if( $soemthingElse ) ...
>>        goto footer;
>> 
>>    if( $seomthingerElse ) ...
>> 
>>    goto footer;
>> 
>> footer:
>> 
>>    // blah blah blah
>>    goto done;
>> 
>> done;
> 
> I heartily agree. In my opinion 'break' is like a 'goto' without a label. As I
> used to
> tell my students "if I say 'break' the one thing I can be sure of is that you
> will all
> disappear. I had no idea where most of you go, or what you do, and I'm not
> even sure if
> I'll ever see some of you again."
> 
> 'Goto' makes it possible to set up the more complex control sequences you
> sometimes need,
> yet have them clearly defined. For example:
> 
> <?php
> 
> begin: .......
> if ( ... ) { goto error; }
> .......
> if ( .... ) { goto footer; }
> .......
> goto body;
> 
> repeat: ....
> if ( .... ) { goto footer; }
> .......
> if ( ... ) { goto error; }
> 
> body: .........
> if ($error) { goto error; }
> ........
> if (!$error) { goto footer; }
> error: ........
> 
> footer:   ........
> if ( .... ) { goto repeat; }
> ?>
> 
> I find it very difficult to set up sequences like this using if/else if (or
> switches, but
> I don't like them anyway), and have to resort to setting flags and very
> careful
> indentation to make sure that I'm doing what I intended. Unfortunately my
> provider is
> still using PHP 4.something, and I have been too busy to switch to someone
> more
> up-to-date.

clancy, i can't argue with you. my desired usage of break is really just a
cover-up for a goto. i know.

it makes no logical sense but i think i'd sooner adopt oop than gotos. my
mom taught me to program back in the late 70s and early 80s. she was an old
hand. when FORTRAN 4 came out she thought it was the bees knees. when Z80
micros with MS-BASIC came out, she thought they were cute. when turbo pascal
came out on CP/M, she was impressed and taught me to quit using gotos.

so while it makes no logical sense, perhaps you can see that it makes
emotional sense.



-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, visit: http://www.php.net/unsub.php

Reply via email to