3
我正在自己的MVC框架上工作,发现自己陷入困境。 我需要以下结构:在PHP中模仿多重继承
Controller
--> Backend_Controller
--> Backend_Crud_Controller
--> Frontend_Controller
--> Frontend_Crud_Controller
两个“Backend_Crud_Controller”和“Frontend_Crud_Controller”具有相同的功能,因此它们应该扩展名为“Base_Crud_Controller”另一个类,唯一的区别来自于“后端/前端”控制器实施不同的机制。
基本上他们应该继承这两个类,但我的问题是'后端/前端'控制器不一定扩展'Base_Crud_Controller'。我知道多重继承不存在于PHP中,但我正在寻找一种解决方案,我选择不要Mixin(就像在Symfony中一样),因为我并不认为这是一个优雅的解决方案。
接口不适合我,因为所有这些结果都是应该实现方法的具体类。
请问您能告诉我们这些课程每个课程是做什么的?你为什么决定创建这种继承模式?我对你想要做的事感到不好。 – Crozin 2010-05-03 11:55:20
“控制器”代表了MVC世界中的基本控制器功能。 后端/前端控制器都扩展'控制器'并实现不同的逻辑。在前端/后端控制器中,我可以使用CRUD_Controllers来实现基本的CRUD功能,但是并不是所有的前端/后端控制器都需要实现CRUD。 – fabieno 2010-05-03 15:51:33