$foo[bar] only works for backwards compatibility. In fact writing bar 
without '' means that it's a constant and if that constant value is defined 
it will be substituted instead of the bar. If it's not defined it defaults 
to the string 'bar'.
So if you want to do it right (and faster) do $foo['bar']

Andi

At 05:48 PM 2/13/2001 +0000, Phil Driscoll wrote:
>Bad practice alert!!!
>
>Derek Sivers wrote:
> >I had heard someone on the list say that it's always best to use quotes,
> >for the same reason as XHTML, where every value MUST have quotes.
> >
> >But honestly I've been using only NO-quotes all year and find it much
> >easier to read.  And NEVER any problem!
> >
> >Also makes it easier when you need to use an array variable inside a quoted
> >string:
> >
> >print "Hello there $client[name]";
>
>If your php error reporting level is set to show warnings (which it should
>be on your development machines) then referring to
>$foo[bar]
>will give
>Warning: Use of undefined constant bar - assumed 'bar' in
>whatever/yourscript.php on line n
>
>So php only works in this case because it couldn't find bar in it's list of
>constants, and guessed at the mistake you made. This just slows things down.
>
>I can't see any advantage at all to missing the quotes out.
>
>Your example could be written
>
>print "Hello there {$client['name']}";
>
>Sorry to sound stroppy :)
>
>Cheers
>--
>Phil Driscoll
>Dial Solutions
>+44 (0)113 294 5112
>http://www.dialsolutions.com
>http://www.dtonline.org
>
>
>-----Original Message-----
>From: Derek Sivers <[EMAIL PROTECTED]>
>To: Matthias Krehl <[EMAIL PROTECTED]>
>Cc: [EMAIL PROTECTED] <[EMAIL PROTECTED]>
>Date: Tuesday, February 13, 2001 5:34 PM
>Subject: Re: [PHP] foo[bar] _or_ foo['bar'] ?
>
>
> >
> >>I'd really appreciate a clear statement whether to use better
> >>    $foo = array('bar' => 'boing');
> >>     doWhatSoEver($foo[bar]);
> >>or
> >>    $foo = array('bar' => 'boing');
> >>     doWhatSoEver($foo['bar']);
> >
> >
> >
> >
> >
> >--
> >PHP General Mailing List (http://www.php.net/)
> >To unsubscribe, e-mail: [EMAIL PROTECTED]
> >For additional commands, e-mail: [EMAIL PROTECTED]
> >To contact the list administrators, e-mail: [EMAIL PROTECTED]
> >
> >
>
>
>--
>PHP General Mailing List (http://www.php.net/)
>To unsubscribe, e-mail: [EMAIL PROTECTED]
>For additional commands, e-mail: [EMAIL PROTECTED]
>To contact the list administrators, e-mail: [EMAIL PROTECTED]


-- 
PHP General Mailing List (http://www.php.net/)
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]
To contact the list administrators, e-mail: [EMAIL PROTECTED]

Reply via email to