Сделают вызов $class::test() допустимым, или нет

ustas

Элекомист №1
Сделают вызов $class::test() допустимым, или нет

PHP:
class a  
{      
    static function test()
    {          
        echo 'Работает ' . "\n";      
    }      
    function test2()      
    {          
        echo 'Работает ' . "\n";      
    }  
} 
 $class = 'a'; $method = 'test2';  // вызываем статическую функцию    
//$class::test();   // неправильное использование  
$obj = new $class();  
$obj->test2();  
$obj->$method();
Расматривался ли у разработчиков ПХП такой вызов статической функции, $class::test()(сейчас невозможно). Ведь допустимо использование $obj->$method(). Для реализации, например плагинов нужно создать и инициализировать целый обьект, потом вызвать функцию.
Конечно можно просто функцию писать, но как же ООП, наследование и т.д..
Кто инфой располагает? Может tony2001 просветит?
 

ustas

Элекомист №1
HraKK
Хороший вопрос, например получаю имя неизвестного класса производного от а, статический метод b создает и/или возращает готовый обьект.
Встречный вопрос: $obj->$method() тоже для смеха придумали?
Я бы еще и дружественные методы хотел бы, приватный для всех кроме наследников от определенного класса.
 

ustas

Элекомист №1
zerkms
Правильный и пока единственный вариант call_user_func(array($class, 'test')). Я его уже юзаю:) . но ps
параметры для call_user_func() не могут передаваться по ссылке.
Все таки $class::test() удобней была бы.
 
Сверху