RE: [PHP] How to find the object name in a class?
> So is there ANY way to get the name of the object in PHP code without > knowing the name of the object ahead of time? I went through this exact thing not too long ago with an error class I wrote. Unfortunately, there is no way to know. What you can do, however, is do a check to see if that object exists before you access the variable. Other than that, I think you're outta luck. :/ Chris
Re: [PHP] How to find the object name in a class?
*sigh* I'm thinking so too ;( Doh! However, I have at least a usable hack around. In the constructor of your class, add: function Class ($object_name) { global $pge; $pge = $object_name; } Then when you use create a new object of that type you must use: $objectname = new Class('objectname'); Then in your code you just use ${$pge}-> to refer to it. Sucks, doesn't it? -- Plutarck Should be working on something... ...but forgot what it was. ""Boget, Chris"" <[EMAIL PROTECTED]> wrote in message [EMAIL PROTECTED]">news:[EMAIL PROTECTED]... > > So is there ANY way to get the name of the object in PHP code without > > knowing the name of the object ahead of time? > > I went through this exact thing not too long ago with an error class > I wrote. Unfortunately, there is no way to know. What you can do, > however, is do a check to see if that object exists before you access > the variable. Other than that, I think you're outta luck. :/ > > Chris > -- 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]
RE: [PHP] How to find the object name in a class?
> *sigh* I'm thinking so too ;( > Doh! > However, I have at least a usable hack around. > In the constructor of your class, add: > function Class ($object_name) { > global $pge; > $pge = $object_name; > } > Then when you use create a new object of that type you must use: > $objectname = new Class('objectname'); Heh. This is exactly what I'm doing as it was the only work around that I could find, too. > Then in your code you just use ${$pge}-> to refer to it. Yup. However, before I do this, I check to make sure $pge is valid before I use it. Otherwise, all kinds of nastiness can occur. What I'm doing this for is my error reporting class. I'm using a wrapper function that calls my class' errorHandler() method since you cannot specify a class method as the handler function. Kind of funky. But doing this was the only way I could get around it. > Sucks, doesn't it? Yup. But I'm sure there is a reason for it. Kind of like whatever the reason is that we cannot actually get a variable's name. I.E. $joe = "bob"; we cannot get that the above variable's name is "joe". Oh, well. Chris