Я пытаюсь сделать что-то подобное, но мне это не удается.PHP: полиморфные абстрактные статические методы
abstract class Animal
{
abstract static function getName();
static function sayName() { echo self::getName(); }
}
спасибо!
Я пытаюсь сделать что-то подобное, но мне это не удается.PHP: полиморфные абстрактные статические методы
abstract class Animal
{
abstract static function getName();
static function sayName() { echo self::getName(); }
}
спасибо!
Было бы хорошо, если бы вы дали намек на то, как вы «не получится», но я полагаю, вы наткнуться на статических привязок и нужно использовать late static bindings введенный в PHP 5.3.
Мое предположение, возможно, вы пытаетесь создать экземпляр объекта из этого класса.
Вы не может. Это класс abstract
. Подклассируйте его, а затем создайте экземпляр.
Это не удастся - у вас не может быть абстрактной статической функции. См. Принятый ответ Why does PHP 5.2+ disallow abstract static class methods?.
У вас есть две проблемы:
Как вы не удается? – alex 2010-12-06 06:58:48