<?
/**
*
* @author vim
* @email vim@evosys.ro
* @copyright 2009 EvoSys.ro
*
* @project N/A
* @filename udpcheck.class.php
* @created 12/01/2009
*
* @license http://opensource.org/licenses/gpl-license.php GNU Public License
*/
class check {
var $ip;
var $port;
/**
*
* @param string $ip Server ip
* @param string $port Server udp port
*
* @return string the server status
*/
function udp($ip, $port) {
if (fsockopen( "udp://$ip", $port, $errno, $errstr, 1)) { $status = 'Online'; } else { $status = 'Offline'; }
return $status;
}
/**
*
* @param string $ip Server ip
* @param string $port Server udp port
*
* @return int the server ping
*/
function ping($ip, $port) {
$starttime = microtime(true);
if ( fsockopen( "udp://$ip", $port, $errno, $errstr, 1 ) ) { $status = 1; } else { $status = 0; }
$stoptime = microtime(true);
$ping = ($stoptime - $starttime) * 1000;
$ping = number_format($ping, 3);
return $ping;
}
}
$s = new check();
echo '127.0.0.1:27015 - Status: '.$s->udp('127.0.0.1', '27015').' | Ping: '.$s->ping('127.0.0.1', '27015').' ms';
?>
Functia udp verifica daca serverul este online, iar functia ping verifica ping-ul dintre masina pe care este rulat scriptul php si masina pe care ruleaza serverul CS.
Aceasta clasa poate fi folosita pentru orice server ce foloseste protocolul UDP. (aici sunt incluse si jocurile ce folosesc engine-ul HalfLife 1 si HalfLife 2).
Poate cu ocazia publicarii acestei clase pe un forum vizitat, nu vor mai aparea indivizi care sa ceara bani pe lucruri asemanatoare











