🔥码云GVP开源项目 12k star Uniapp+ElementUI 功能强大 支持多语言、二开方便! 广告
## 插件 Addon 与 Hook 使用方法基本一致,不同点在代码存放目录与配置项设置. #### 注意 a. 插件默认存放在 Addon 目录中(可改变插件目录) b. 插件类必须以 Addon.class.php 结尾 c. 在入口文件定义 define('APP_ADDON_PATH','Addons/') #### 基本使用 **配置项** 配置项时不要加 Addon 后缀,这与 Hook 配置不同 *例:* ~~~ return array( 'Hook' => array( 'Test' => array('Mail'), ) ); ~~~ *插件主文件, 路径: `Addons\Mail\MailAddon.class.php`* ~~~ class MailAddon { public function Test() { echo ' Mail插件执行..'; } } ~~~ 在控制器中调用插件 ~~~ namespace Home\Controller; class IndexController extends Controller { public function index() { Hook::listen('Test'); //代码将执行输出: Mail插件执行.. } } ~~~ ## 插件模块 其实插件就是一个模块,可以像一般模块一样在插件目录中创建 Controller、Model、View、Config 等目录 , 使用方法与普通模块一样。 即然插件就是一个模块,那么我们也可以直接访问插件控制器,URL 地址与普通模块相 似,只是加上 g 参数即可。 访问 `Login` 插件中的 `AdminController` 控制器 `g=Addons&m=Login&c=Admin&a=index`