NFSU:Мониторинг через PHP
Материал из WikiServia
Алгоритм прост. При соединении с сервером NFSU на порт 10980 выдается строка вида:
usercount|roomcount|timeonlineinseconds|platform|version|servername~~~A.LAN|0|[]B.LAN|0|[]C.LAN|0|[]D.LAN|0|[HarpyWar|]E.LAN|1|[|]F.LAN|0|[]G.LAN|0|[]H.LAN|0|[]
Где A.LAN|0|[]B.LAN|0| ... - названия комнат, и кол-ва народу в каждой, а в скобках [] ники игроков, разделяемые символом |
Собственно, надо эту строку разложить на переменные, и получим нужный результат.
Простейший пример вывода исходных данных на PHP:
<?php $address = '87.228.3.174'; $port = 10980; echo get_nfsu_data($address, $port); function get_nfsu_data($address, $port) { $output = ; if ( ($socket = socket_create(AF_INET, SOCK_STREAM, 0)) && socket_connect($socket, $address, $port) ) { while ($tmp = socket_read($socket, 4024)) $output .= $tmp; socket_close ($socket); } return $output; }