ID: 8816
Updated by: sniper
Old-Status: Feedback
Status: Closed
Bug Type: Class/Object related
Assigned To: 

No feedback. If this happens with soon to be released PHP 4.0.5 too, reopen this bug 
report with a short script 
that can be used to reproduce this.


Previous Comments:

[2001-02-20 01:15:52] [EMAIL PROTECTED]
Please provide a reduced code fragment (<15 lines) producing
this behaviour.
Put no database queries etc. in it and rely on no external
files/functions to ensure that we can reproduce it easily
unless the problem is not directly related to some db (or
similar) function.


[2001-01-19 22:15:50] [EMAIL PROTECTED]
I today found out a strange thing about the PHP4 object/variable handling that I can 
not understand.

My main script first clones a provider class and stores the new object into $MAINPROV;

Then it includes two files that give back two elements of the page.

My provider class has some subclasses. These shall be loaded on demand with functions 
like getFooProvider(). Theese functions test via <pre>is_object($this->FOO)</pre> if 
the class is already loaded. If not it includes the file containing the class 
definition and spawns <pre>$this->FOO = new foo($this)</pre>.

Now listen to this: If I use the load-function in the main script all works fine. But 
if the class is loaded from one of the subclasses (into the main provider class object 
that is a variable in the main script) it cannot be accessed in the other subscript, 
the second element. This causes the foo-class-file to be reloaded and throws out an 
error message because the class is already defined.

If anybody can help, it would be very very sad if I had to workaround pre-loading 
every subclass that can be used on this page, because I wanted to make it dynamically 
load the classes. Thanks!


ATTENTION! Do NOT reply to this email!
To reply, use the web interface found at

PHP Development Mailing List <>
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