标签: abstract-function

如何在PHP中的非抽象类中声明抽象方法?

class absclass {
    abstract public function fuc();
}
Run Code Online (Sandbox Code Playgroud)

报告:

PHP致命错误:类absclass包含1个抽象方法,因此必须声明为abstract或实现其余方法(absclass :: fuc)

我想知道实现其余方法意味着什么,怎么做?

php abstract-function

54
推荐指数
3
解决办法
8万
查看次数

为什么PHP允许抽象静态函数

请考虑以下代码:

abstract class ExampleClass
{
    public static function regularStaticFunction()
    {
        return static::abstractStaticFunction();
    }

    abstract protected static function abstractStaticFunction();
}

ExampleClass::regularStaticFunction();
Run Code Online (Sandbox Code Playgroud)

PhpStorm IDE对声明的声明发出警告abstractStaticFunction:

PHP严格标准:静态函数'abstractStaticFunction'不应该是抽象的.

静态函数不应该是抽象的.

但是,PHP在解析此类时会继续执行程序并输出以下内容:

PHP严格标准:静态函数ExampleClass :: abstractStaticFunction()在第7行的php shell代码中不应该是抽象的

在我看来,因为PHP允许对抽象类进行静态函数调用,所以不应该在抽象类上定义抽象静态函数.

为什么解释器在PHP中允许抽象静态函数,当它们是荒谬的时候?

php interpreter abstract-class abstract-function

9
推荐指数
2
解决办法
5228
查看次数

界面和抽象的公共功能

在我看来,这两个interfaceabstract function非常相似,

这就像一个必须实施某些方法的订单,

那有什么区别?

php interface abstract-function

1
推荐指数
1
解决办法
3853
查看次数