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