本人是一个业余的 PHP 开发者,我其实一直很不明白网上所解释的插件系统的实现方法. 为何一定要使用一个类来监听插件的情况?(php 不应该只是单独的一次运行编译然后输出吗?) 假如我用的是面过程的编写方法呢? 我的想法是:主程序可以在指定的行数遍历插件[已激活]进行调用运行,而且在钩子(我更多理解为是对函数的引用,求纠正)的实现上我完全可以单纯的封装成一个函数.编写插件的时候只需引用相应函数即可,而且内部函数我认为对于开发者是不需过分的进行干涉,那所谓的易维护性不就不存在了吗?求各位大牛指导 OWO
1
minbaby 2016-10-04 00:22:28 +08:00 2
https://github.com/igorw/evenement 看看 doc 目录的那个 plugin 文件, 应该可以看明白
|
2
lslqtz 2016-10-09 07:29:21 +08:00
我也有疑问,我想了想:
可以在每个提供接口的地方引入一个文件(不同文件名),而这个文件则得到一个已安装插件的数组,并判断对应插件是否有这个接口的文件名,如果没有则插件不需要这个接口,如果有则引入并执行。(配合优先级决定插件执行顺序) |
3
lslqtz 2016-10-09 07:31:25 +08:00
你的想法和我的差不多,没啥问题,可以通过引入相关函数,让函数在需要的指定的位置执行所需的操作。
|