好的,这是一种非描述性的,但我希望建立一个网站,通过添加和删除php模块,我可以添加和删除“功能”。 基本上,是否有可能使一个网站像一个框架,您可以插入和删除各种PHP模块,类似于如何在任何其他程序中启用和禁用模块 这有意义吗? :)
答案 0 :(得分:2)
可行的方法是将核心应用程序的接口设计为各种插件(或模块......)。
例如,您可以决定所有插件必须具有特定的目录结构 这使您的核心库可以知道在哪里可以找到视图文件,新类等。
您可能希望确定所有插件都具有相同名称的init文件,您可以在其中编写所有插件初始化代码,与其他事件(init,end等)相同。
要集成到核心应用程序中特定菜单的所有插件都应该有一个menue.php或其他一些严格命名和结构化的配置文件,它将告诉您的核心库哪个菜单要集成它以及文本是什么等等。
核心申请 核心应用程序应该在各个重要的地方都有连接,插件可以使用/ overidde来改变核心应用程序的行为。
我还建议添加类似于行为的事件,只是这次核心应用程序触发它并调用注册到事件的所有函数。
<强> SUGGESTION 强> 虽然我个人不太喜欢Elgg,但他们设计它的方式会让你很好地理解如何设计一个可以通过插件轻松消耗的FW(尝试使用Joomla,wordpress)。
答案 1 :(得分:0)