0

我有 2 个抽象类:AbstractCommentable(评论方法)和 AbstractImaging(管理图像的实体方法)。

一些课程已经有:

class Trip extends AbstractImaging {/** some stuff **/}
class Marker extends AbstractImaging {/** some stuff **/}
class Gastronomy extends AbstractImaging {/** some stuff **/}

但我想将 AbstractCommentable 添加到此类...

这样做的正确方法是什么?

4

1 回答 1

3

你要么AbstractImaging已经扩展AbstractCommentable或以其他方式......我建议你不想要。

由于可能的冲突,多重继承在 PHP 中只能是线性的。

你不能做类似...

class Whatever extends AbstractImaging, AbstractCommentable

简单的方法:

如果您使用的是 php 5.4+,您可以使用特征将 CommentableInterface 方法添加到您的实体。

复杂的方法:

创建一个注释并让一个教义监听器创建一个代理类,添加可注释的方法。

于 2013-07-16T14:07:22.330 回答