thinkphp在推出了Onethink,在开发中提供给你一个挂载点,我们可以进行插件开发,开发完成后,我们将其挂载到 挂载点上,会自动调用执行;
先简单的了解下钩子,
假如有如下函数
function fun(){ funA(); funB(); }
fun函数正常的执行顺序,肯定是执行完funA,然后执行funB,然后fun函数就结束了。但是,假如我们想对函数做一些变化。比如说,fun是一个解析函数,我们希望后期可以提供丰富的解析函数,而究竟用哪个函数解析,我们希望在配置文件中配置。这个时候就可以发挥钩子的力量了。
我们可以在function fun(){}
中加入一个挂钩点H,然后再执行H这个函数之前,将钩子函数配置好,我么就可以根据需要来解析了。
OneThink里可以快速创建个插件;
选择实现钩子的方法:
这里选择documentDetailAfter; 意思是在文章结束后添加什么内容~
点击确定后,会在Addons 下生成一个文件。这里直接用的Example,生成的Example文件;
Example里会生成两个文件时config.php 和ExampleAddon.class.php 两个文件。
//实现的documentDetailAfter钩子方法
//实现的documentDetailAfter钩子方法 public function documentDetailAfter($param){ //echo "hello word!"; $aa = $this->getConfig(); $this->assign("aaaa",$aa); $this->display(); }
只需在该方法里进行操作,映射值,在Article文件里,就可以直接输出值。、
用$aa = $this->getConfig();可以直接获得配置文件里设置的值
最后的效果为:在文章的末尾输出你添加的内容