1.回调函数 闭包在类的内部调用
class client
{
public function request($param1,$callfunc)
{
echo $param1.'<br/>';
$c = 5;
$d = 6;
echo $callfunc($c,$d);//调用通过参数传入的闭包函数
}
}
$client = new client();
$a = 1;
$b = 2;//假如$a 和 $b是在其他地方返回的结果,我想在client的回函数内使用这个结果,通过闭包把参数传入回调函数,在client内调用回调函数
$client->request('123', function($c,$d) use ($a,$b){
return $c+$d+$a+$b;
});
2.php swoole 事件处理机制的理解
class Server
{
public $events = [];
public function on($event, $handle)
{
$this->events[$event] = $handle;
}
public function trigger($event, $handle)
{
call_user_func_array($this->events[$event],$handle);
}
}
class client
{
public function request($param1,$param2)
{
echo $param1.'-'.$param2;
}
}
$server = new Server();
$client = new client();
$server->on('event',[$client, 'request']); //注册一个事件上的响应回调函数
$server->trigger('event',['hello', 'swoole']); //触发一个事件
有问题进群交流 721200119