| 
<?phpinclude_once('./ping.class.php');
 
 function PrintUsage($string = '')
 {
 if($string != '') {
 echo $string . "\n\n";
 }
 
 echo 'php index_ping.php [addr] [-c:X] [-t:Y]' . "\n";
 echo "\t" . '[addr] mandatory: The host (IP address or host name) to ping...' . "\n";
 echo "\t" . '[-c:X] optionnal: The number of ping rtequest to send' . "\n";
 echo "\t" . '[-t:X] optionnal: The timeout value' . "\n";
 die("\n");
 }
 
 if($argc <= 1) {
 PrintUsage('Paramètre(s) invalide(s)...');
 die("\n");
 }
 
 $try = 4;
 $timeout = 2500;
 for($i = 0 ; $i < $argc ; $i++)
 {
 if(strpos($argv[$i], '-c:') !== false)
 $try = (int)substr($argv[$i], 3);
 else if(strpos($argv[$i], '-t:') !== false)
 $timeout = (int)substr($argv[$i], 3);
 else
 echo $argv[$i] . "\n";
 }
 
 $ping = new CPing();
 $overall = $success = 0;
 
 echo '#' . "\t" . 'IP' . "\t\t\t" . 'Time (ms)' . "\t" . 'TTL' . "\n";
 for($i = 0 ; $i < $try ; $i++) {
 
 $res = $ping->Ping($argv[1], $timeout);
 if($res === false) {
 echo $argv[1] . ' ne répond pas au ping...' . "\n";
 die();
 } else {
 
 echo ($i + 1) . "\t" . $res['answer']->ipHeader->iaSrc . "\t\t" . sprintf('%.3f', $res['time']) . "\t\t" . $res['answer']->ipHeader->TTL . "\n";
 
 $success++;
 $overall += $res['time'];
 }
 }
 echo ($success * 100.0 / $try) . "%\t" . $argv[1] . "\t" . sprintf('%.3f', $overall / $try) . "\n";
 
 ?>
 |