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();
不负相思意
素胚勾勒不出你