這里寫(xiě)問(wèn)題描述
自動(dòng)重連,這里的first_connect為啥不會(huì)重新賦值呢
$async->onConnect = function (\Workerman\Connection\AsyncTcpConnection $asyncTcpConnection) {
static $first_connect = false;
var_dump($first_connect);
if (!$first_connect) {
echo "百度鏈接\n";
}
$first_connect = true;
};
重連的時(shí)候$async->onConnect
引用的還是之前的函數(shù),函數(shù)內(nèi)部已經(jīng)初始化 $first_connect
了,所以重連的時(shí)候這個(gè)函數(shù)里 $first_connect
還是之前的值。斷開(kāi)的時(shí)候重新設(shè)置下 $async->onConnect=function(){}
就好了,也就是重新引用一個(gè)新的函數(shù)