Re: Object Inheritance, get_class() and a static function call

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

 



Hello Richard,

thanks for for your answer.

a> class ClassA {
a>    function getClassName() {
a>      return get_class($this); # [1]
a>    }
a> }
a> class ClassB extends ClassA { }
a> echo ClassB::getClassName();

a> this script echoes "Object" instead of "ClassB". but i would like to
a> return the classname of the derived class without writing the method again.

"The double colon, is a token that allows access to static, constant,
and overridden members or methods of a class."

Of which none of yours are (at least not in the code posted)

Sure! It's the first one: i'm calling a method of the class without instantiaton. it works even though the method isn't declared static. maybe this is the fault!?


class ClassA {
  public static function getClassName() {
      return get_class($this); //  [1]
   // or [2]   return get_class(self);
   // or [3]   return __CLASS__;
  }
 }
class ClassB extends ClassA { }
echo ClassB::getClassName();

> Wouldn't get_parent_class() work in this situation?

No, because there is no parent class of ClassA and im searching for the name of the derived class.

Maybe i will found the solution on
http://php.belnet.be/manual/en/language.oop5.static.php
Still reading...

Best regards,
Axel P.

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