Voyager2K
Новичок
дочерний класс.... узнать имя класса
Есть один класс, наследуемый от другого. Вопрос каким образом из метода родителя [ fun() ] узнать имя дочернего(test2) класа?
- Переорпределять метод в дочернем классе не хочется, т.к. таких классов будет много и все их переопределять не есть гуд.
- Передавать переменной имя класса в методы [ such_func_will_be_too($classname)] тоже не хочется.
- для НЕ static проблему можно решить переменной объекта $this->className к которой и будут обращаться методы из test1. А вот для стати методово что придумать?
Какие могут быть выходы?
Есть один класс, наследуемый от другого. Вопрос каким образом из метода родителя [ fun() ] узнать имя дочернего(test2) класа?
- Переорпределять метод в дочернем классе не хочется, т.к. таких классов будет много и все их переопределять не есть гуд.
- Передавать переменной имя класса в методы [ such_func_will_be_too($classname)] тоже не хочется.
- для НЕ static проблему можно решить переменной объекта $this->className к которой и будут обращаться методы из test1. А вот для стати методово что придумать?
PHP:
class test1
{
public function fun()
{
echo 'AT TEST1.... '.__CLASS__.'<br>';;
}
static public function such_func_will_be_too()
{
echo 'AT TEST1.... '.__CLASS__.'<br>';
}
}
class test2 extends test1
{
function __construct()
{
echo 'AT TEST2.... '.__CLASS__.'<br>';;
}
/*
static public function such_func_will_be_too($classname)
{
test1::such_func_will_be_too($classname);
}*/
}
$t = new test2();
$t->fun();
test2::such_func_will_be_too();
