PHP的其他框架都是一个进程处理一个请求。所以有很多简短的全局助手函数。比如db model input等等。但是SWOOLE 一个请求是在一个协程内完成的,就不太好实现 助手函数。 希望能增加一个得到onrequest的协程ID。这样就可以实现助手函数。$staticReqs=array();function getRequestID(){ return co::getCid(); //这里希望有新的函数}function model(){ global staticReqs;
$db=$staticReqs[getRequestID()];
$db->query(...);
}
$server = new Swoole\Http\Server('127.0.0.1', 9501, SWOOLE_BASE);
协程开始#1$server->on('Request', function($request, $response) {
$db=new Swoole\Coroutine\MySQL();
$db->connect.....
staticReqs[getRequestID()]=$db; //业务
//处理,如果里面还有go协程的话getCid()就有得不到Request的协程ID,
//直接调用 函数不传参数model()
unset(staticReqs[getRequestID()]);
});
$server->start();
- 2 回答
- 0 关注
- 552 浏览
添加回答
举报
0/150
提交
取消