Re: PHP bug within multi. dimensional arrays?

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



Richard Davey wrote:
Hello Merlin,

Monday, June 6, 2005, 2:51:39 PM, you wrote:

M> while ($row = mysql_fetch_object($result)){
M>         $cat[$row->main_id][name]               = $row->main_name;
M>         $cat[$row->main_id][$row->sub_id][name] =
M> $row->sub_name; M> }

Quote array keys.. ALWAYS quote them:

$cat[$blah]['name'] = $whatever

Otherwise PHP will think [name] is trying to use a constant and
substitute a value accordingly.

M> foreach ($cat AS $maincat){
M>         echo $maincat[name].':';
M>         foreach($maincat AS $subcat){
M>                 echo $subcat[name].$br;
M>         }
M>         echo $br;
M> }

M> As you can see I get the extra letters N and E. Is this an php
M> error or did I do something wrong?

You did something wrong ;) If you don't quote the array keys it'll
assume a constant, which in turn would assume a 1 which will give you
the first character of the string.

Best regards,

Richard Davey

Hi Richard,

that sounds absolutly plausible and I now qoted it the way you recommended. However I do get the same result. Still the first letter.

Any other ideas?

Thank you in advance,
Merlin

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


[Index of Archives]     [PHP Home]     [Apache Users]     [PHP on Windows]     [Kernel Newbies]     [PHP Install]     [PHP Classes]     [Pear]     [Postgresql]     [Postgresql PHP]     [PHP on Windows]     [PHP Database Programming]     [PHP SOAP]

  Powered by Linux