Re: Object to array conversion oddity

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

 



On Saturday 23 September 2006 10:04, Marcus Bointon wrote:
> On 23 Sep 2006, at 15:51, Ray Hauge wrote:
> > To me it looks like they append the name of the class to any private
> > variables.  I would guess that it does this to make sure you know
> > what you're
> > doing and using the private variable like that.  I'm  just guessing
> > at that
> > point though.
>
> Well, I realised that, but it's not very helpful as there's no
> separator between class name and variable name it's impossible to
> separate it correctly - if I had happened to have a property called
> 'myclassfield1', I would not be able to tell if the real property
> name was 'myclassfield1' or a private property called 'field1'. If it
> is going to stray from the documented behaviour, It would be far more
> useful to retain the names that the var_dump on the object uses -
> 'field1:private'. That's safe as : is not a value char in a variable
> name, but it's fine as an array index.
>
> > Try a test with multiple public and multiple private variables.  If
> > the format
> > of the array keys stays the same, then you should have your answer.
>
> In my real code I do have multiple fields all exhibiting this
> behaviour. I'll report it.
>
> Marcus
> --
> Marcus Bointon
> Synchromedia Limited: Creators of http://www.smartmessages.net/
> marcus@xxxxxxxxxxxxxxxxxx | http://www.synchromedia.co.uk/

Could you do something like this?

$private = "Myclass"
$protected = "*";

// public variable
echo $myclass["field1"];

// private variable
echo $myclass[$private."field2"];

// protected variable
echo $myclass[$protected."field3"];

Unless, of course, this behavior is not consistent.  If it is a bug, then you 
run the risk of it being fixed in the future.  But if it is intended to be 
that way, then this format should work regardless of what the member variable 
names are.

-- 
Ray Hauge
Programmer/Systems Administrator
American Student Loan Services
www.americanstudentloan.com
1.800.575.1099

-- 
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