- A+
<?php
/**
* Created by 大师兄
* 派系: 神秘剑派
* 技能: zxc秒杀
* Date: 2020/7/3
* Time: 10:44
* QQ: 997823131
*/
class Ball{
public function down(){
echo "ball is downing <br>";
//注册事件
Hook::add("womain");
Hook::add("man");
}
public function go(){
Hook::exec();
}
}
// 钩子的定义
class Hook{
static public $hooklist = null;
// 添加
static public function add($people){
self::$hooklist[] = new $people();
}
// 触发事件
public function exec(){
foreach(self::$hooklist as $people){
$people ->act();
}
}
}
class man{
public function act(){
echo "i am man nothing<br>";
}
}
class womain{
public function act(){
echo "oh my god<br>";
}
}
$ball = new Ball();
$ball->down();
$ball->go();
通过添加注册顺序不同,来实现不同的流程。
可以延伸出很多用法
- 我的微信
- 这是我的微信扫一扫
-
- 我的微信公众号
- 我的微信公众号扫一扫
-