Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/php/240.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Php 如何允许自定义框架使用插件?_Php - Fatal编程技术网

Php 如何允许自定义框架使用插件?

Php 如何允许自定义框架使用插件?,php,Php,首先,这不是一个真正的编程问题,而是一个编程概念问题。基本上,我已经构建了一个定制的PHP框架,以加快在我的终端上的部署,我想要某种插件系统,允许我在框架的基础上添加特定的功能(比如SQL类或Twitter包)这将允许我把它们放入一个文件夹,而不必为每个新项目实际编辑基础 有什么好办法吗?这是一篇作者写得很好的文章,介绍了如何做到这一点,以及有哪些选择: 另外,请查看: 我在我的cms中做什么: 对于每个插件,我用这个插件的名字制作一个名为拉丁文的文件夹 我也在那里创建了一个/tra

首先,这不是一个真正的编程问题,而是一个编程概念问题。基本上,我已经构建了一个定制的PHP框架,以加快在我的终端上的部署,我想要某种插件系统,允许我在框架的基础上添加特定的功能(比如SQL类或Twitter包)这将允许我把它们放入一个文件夹,而不必为每个新项目实际编辑基础


有什么好办法吗?

这是一篇作者写得很好的文章,介绍了如何做到这一点,以及有哪些选择:

另外,请查看:


我在我的cms中做什么:

  • 对于每个插件,我用这个插件的名字制作一个名为拉丁文的文件夹
  • 我也在那里创建了一个/translations文件夹。检查
  • 有一个php文件,其中包含2个基本函数插件安装插件卸载(你知道,在安装/unistall时会发生的事情,比如创建/删除表)
  • 为您的系统创建一个特殊页面,阅读这些插件(已安装和未安装),并提供一个开/关开关,以便用户可以安装/卸载它们
  • 通过一次调用加载上述单个文件,在索引页(或管理页)顶部包含一次,以便
    包含它们提供的任何功能
  • 启用的插件将从主页加载(包括_一次),以及它们的功能,因此每个插件也可以调用彼此的

我对此进行了研究,根据我的要求,它似乎朝着正确的方向发展,但我有点困惑。我是否需要检查我的代码并向事件添加某些通知程序,以便插件可以在那里运行一段代码?例如:
//原始代码函数save(){$this->anobjectsgottowhatanobjectsgottodo();$this->plugins->notify();}//插件函数recieveNotification(){echo'Model saved!';}
我想你误解了这个问题:)我不是在谈论web应用程序的插件,但特别是一个框架。谢谢你指出这一点,明白了。你想要钩子。@Sarfraz的链接足够好了。可能是重复的