来自 http://www.jb51.net/article/51980.htm
PHP项目中很多用到插件的地方,更尤其是基础程序写成之后很多功能由第三方完善开发的时候,更能用到插件机制,现在说一下插件的实现。特点是无论你是否激活,都不影响主程序的运行,即使是删除也不会影响。
从一个插件安装到运行过程的角度来说,主要是三个步骤:
1.插件安装(把插件信息收集进行采集和记忆的过程,比如放到数据库中或者XML中)
2.插件激活(打开插件,让监听插件的地方开始进行调用)
3.插件运行(插件功能的实现)
从一个插件的运行上来说主要以下几点:
1.插件的动态监听和加载(插件的信息获取)
2.插件的动态触发(插件的运行)
一个完善的插件系统主要包括以下:
1.插件安装及卸载
2.插件打开与关闭
3.插件信息获取
4.插件调度(插件经理)
5.插件主体
在程序的编写上主要实现以下:
1.插件的注册和初始化
2.判断激活条件
3.钩子激活
4.运行插件
实例代码:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102 103 104 105 106 107 108 109 110 111 112 |
|
demo插件文件:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 |
|