Grrr what a newbie mistake (about the scope I mean)! I guess I assumed that
in a class, the $this-> was redundant for a method (it is in J++ which is
where I learned my OOP). So all my variables in the main class were 'global'
to methods in the class. My second bit of confusion is that I've made
classes before where I do this:

class myclass {
        var $five = 5;
 ...
}
  
And it works fine, so you can see how the subtle difference (no var keyword
basically) could lend to confusion. I still don't fully agree with the fact
that I can't initialize the array key/value like that. It seems to me
logical that it should work after I declared the array already.

class myclass {
   var $myPacket         = array();
       $myPacket["blah"] = "asdfasdfasdf";
 ...
}

Thanks guys!

> -----Original Message-----
> From: John W. Holmes [mailto:[EMAIL PROTECTED] 
> Sent: Wednesday, December 10, 2003 6:54 PM
> To: Daevid Vincent
> Cc: [EMAIL PROTECTED]
> Subject: Re: [PHP] Help with associative array in a PHP 
> class. Not working as I'd expect it to?!
> 
> Daevid Vincent wrote:
> 
> > myPacket:
> > ------
> > 
> > How come I don't get ANY array under "myPacket:"?
> [snip]
> >     function printMyVars()
> >     {
> >          echo "myPacket:\n";
> >          print_r($myPacket);
> >     }
> 
> Two words: Variable Scope. :)
> 
> $myPacket is local to the function and empty.
> 
> -- 
> ---John Holmes...
> 
> Amazon Wishlist: www.amazon.com/o/registry/3BEXC84AB3A5E/
> 
> php|architect: The Magazine for PHP Professionals - www.phparch.com
> 
> 
> 
> 

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

Reply via email to