空抽象函数不能包含body

Mar*_*tra 18 php abstract-class

我正在尝试构建一个抽象类(StatusService),它与一些基本逻辑一起定义了需要存在于扩展类中的方法,但遇到了这个我无法解释的错误:

致命错误:抽象函数StatusService :: upd()在第62行的/path/to/lib/services/service.class.php中不能包含body

我的基类的片段:

abstract class StatusService {
    /** ... */

    /**
     * @return boolean
     * @abstract
     */
    abstract public function upd(){}
}
Run Code Online (Sandbox Code Playgroud)

现在我可能完全错了(还没写过很多抽象类),但它看起来不像我有一个身体......?我很感激任何指示,以帮助弄清楚我做错了什么.

我的扩展类(现在只有一个)确实定义了upd()函数并返回一个值,但它仍然将错误转储给我.如果重要,这是在MAMP Pro上运行的PHP 5.4.4.

Lew*_*rin 37

abstract public function upd(){}
Run Code Online (Sandbox Code Playgroud)

应该

abstract public function upd();
Run Code Online (Sandbox Code Playgroud)

请注意,大括号..形成方法的主体.


vvo*_*dra 8

只是用

abstract public function upd();
Run Code Online (Sandbox Code Playgroud)

没有牙套