Thinkphp3.2 行为扩展和插件(Hook)实例详解
1 添加函数
- function hook($hook,$params=array()){
- \Think\Hook::listen($hook,$params); //监听一个钩子
- }
2.在控制器中 Application->Common->Behavior->adBehavior.class.php 添加如下代码
<?php
namespace Common\Behavior;
use Think\Behavior;
class adBehavior extends Behavior {
// 行为扩展的执行入口必须是run
function run(&$arg){
echo '我是一条'.$arg['name'].'广告,'.$arg['value'].'代言';
}
}
3 在控制器中 Application->Home->Controller->IndexController.class.php 添加如下代码
- namespace Home\Controller;
- use Think\Controller;
- use Think\Hook;
- class IndexController extends Controller {
- public function index(){
- //\Think\Hook::add('ad','Behavior\\adBehavior');
- Hook::add('ad','Common\Behavior\adBehavior');
- $this->display();
- }
- }
4模板中使用
<h1>How to used?</h1>
{:hook('ad', array('name'=>'冰箱','value'=>'范冰冰'))}

浙公网安备 33010602011771号