Как получить онлайн другого сервера?

Как получить онлайн другого сервера?
Api: 3.0.0

public function getOnline($ip, $port) {
    $socket = fsockopen("udp://".$ip, $port);
    fwrite($socket, "\x01" . "\0\0\0\0\0\0\0\0" . "\x00\xff\xff\x00\xfe\xfe\xfe\xfe\xfd\xfd\xfd\xfd\x12\x34\x56\x78");
    if(($data = fread($socket, 1024)) !== false) {
        if(isset(explode(";", substr($data, 35))[4])) {
            $online = explode(";", substr($data, 35))[4];
            return $online;
        }else{
            return 0;
        }
    }
}
$a = $this->getOnline("127.0.0.1",19132);

Старый код @Nik1t0n4ik

1 лайк

Интересно

Как вам

Тут будут все игроки которые зашли на мой сервер ещё их IP добавлю и всё

неплохо

Не пиши мне

В игнор кин и всё

нормальный кор не пропустит такую магию бля))) ракнет пакеты для кого?

public function getOnline(string $ip, int $port) : int {
		$socket = fsockopen("udp://". $ip, $port);
		stream_set_timeout($socket, 5);
		$pk = new UnconnectedPing();
		$pk->sendPingTime = PHP_INT_MAX;
		$pk->clientId = PHP_INT_MAX;
		$pk->encode();
		fwrite($socket, $pk->buffer);
		if(($data = fread($socket, 4096)) !== false){
			if(isset($data[4])){
				$online = explode(";", substr($data, 35))[4];
				return $online;
			}
			return 0;
		}
		return 0;
	}
1 лайк

Все жалобы @Nik1t0n4ik