> on RedHat with PHP 4.3.6 the following code produces 'test' - 
> I'm expecting
> 'test2':
> 
> class test {
>     function printClass() {
>         echo __CLASS__;
>     }
> }
> 
> class test2 extends test {
> }
> 
> test2::printClass();
> 
> 
> I would like to get/echo the name of the class calling the 
> method - in my case test2. Any ideas?

__CLASS__, and the other PHP "magic constants" are resolved at compile time.
The behavior you've experienced here is the correct one.

AFAIK there is no way to achieve your desired result without creating an
instance of test2 or overriding printClass() in test2.

Cheers,

Rick

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

Reply via email to