使用说明

CmlPHP中插件的实现通过钩子来实现,模板中使用{{hook test}}设定一个名称为test的插件钩子,在程序中可使用\Cml\Plugin::hook('test');设定一个名称为test的插件钩子,当程序执行到设置hook的位置时,如果有插件挂载到这个钩子,执行该插件,一个钩子可以绑定多个插件.

CmlPHP中的插件信息通过plugin.php这个插件配置文件来配置, 如:

<?php
//应用插件配置文件
//  \Cml\Plugin::mount('hookName'/*要挂载的钩子*/, array(
//        'ClassName' => 'run', //该hook执行的插件名 =>方法名
//        'ClassName2' => 'run' //一个hook可挂载多个插件
//  ));
//我们就在test这个钩子上挂载了两个插件

插件存放在应用目录/Plugins目录中 插件文件的命名规则为 插件名Plugin.php如:我们定义一个名为Test的插件TestPlugin.php插件内容:

<?php
/**
 * 测试插件
 *
 */
class TestPlugin {
    public function run() {
        echo '测试插件';
    }
}

在相应的位置使用 {{hook xxx}}Cml\Plugin::hook(xxx) 设置钩子,在配置中挂载上Test插件的run方法即可

results matching ""

    No results matching ""