protected function getLocalIp()
{
if ($this->serverIP == '0.0.0.0' || $this->serverIP == '127.0.0.1') {
$serverIps = swoole_get_local_ip();
$patternArray = array('10\\.', '172\\.1[6-9]\\.', '172\\.2[0-9]\\.', '172\\.31\\.', '192\\.168\\.');
foreach ($serverIps as $serverIp) {
// 匹配内网IP
if (preg_match('#^' . implode('|', $patternArray) . '#', $serverIp)) {
return $serverIp;
}
}
}
return $this->serverIP;
}