> -----Original Message-----
> From: Phil Schwarzmann [mailto:[EMAIL PROTECTED]]
> Sent: 28 January 2002 22:02
>
> I keep getting parse error with this code:
> ($teams[] is a big array that I got by using mysql_fetch_array)
>
>
> $r = "game";
> echo "<select name='game'>";
> echo "<option value=game1>$teams[$r.'1']</option>";
> echo "<option value=game1>$teams[$r.'16']</option>";
> echo "</select>";
This really is a faq: if you want to substitute anything other than a simple variable
name into a double-quoted string, you MUST use curly braces {} to delimit it. So:
echo "<option value=game1>${teams[$r.'1']}</option>";
is what you need.
(Note: I also treat variable names including underlines _ as being not simple, as I've
had cases where PHP seems to parse these incorrectly -- for example,
"...$long_name..." is treated as "...${long}_name...", not "...${long_name}...".)
If you have any doubts, include the {} -- even for simple variables, it does no harm
to write, for example "...${var}...".
I do sometimes wonder whether the {} should be made mandatory in some future version,
even for simple variables, to avoid exactly this kind of confusion.
Cheers!
Mike
---------------------------------------------------------------------
Mike Ford, Electronic Information Services Adviser,
Learning Support Services, Learning & Information Services,
JG125, James Graham Building, Leeds Metropolitan University,
Beckett Park, LEEDS, LS6 3QS, United Kingdom
Email: [EMAIL PROTECTED]
Tel: +44 113 283 2600 extn 4730 Fax: +44 113 283 3211
--
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]