public function close(Session $session) { $identifier = $session->getID(); fclose($this->sockets[$identifier]); unset($this->sockets[$identifier]); unset($this->sessions[$identifier]); $this->closeSession($identifier); }
public static function readVarIntSession(Session $session, &$offset = 0) { $number = 0; $shift = 0; while (true) { $b = $session->read(1); $c = ord($b); $number |= ($c & 0x7f) << $shift; $shift += 7; ++$offset; if ($b === false) { return false; } elseif (($c & 0x80) === 0x0) { break; } } return $number; }