[supersaibal]Originariamente inviato da iDleR
Dato che dovrei fare un controllo se il server è online oppure no...questa funzione se non riesce a pingare restituisce false oppure la stringa di mancata connessione? [/supersaibal]
ti rende la stessa stringa che otterresti eseguendo il comando da shell (DOS nel mio caso). Richiesta scaduta e tempi 0.

Prova anche ad usare exec().. ti rende un array invece di una stringa non formattata. Esempio su ping a html.it
codice:
exec('ping www.html.it', $res);
echo "<pre>";
print_r($res);

Risposta del print_r()

Array
(
    [0] => 
    [1] => Esecuzione di Ping www.html.it [212.110.13.99] con 32 byte di dati:
    [2] => 
    [3] => Risposta da 212.110.13.99: byte=32 durata=57ms TTL=55
    [4] => Risposta da 212.110.13.99: byte=32 durata=58ms TTL=55
    [5] => Risposta da 212.110.13.99: byte=32 durata=57ms TTL=55
    [6] => Risposta da 212.110.13.99: byte=32 durata=56ms TTL=55
    [7] => 
    [8] => Statistiche Ping per 212.110.13.99:
    [9] =>     Pacchetti: Trasmessi = 4, Ricevuti = 4, Persi = 0 (0% persi),
    [10] => Tempo approssimativo percorsi andata/ritorno in millisecondi:
    [11] =>     Minimo = 56ms, Massimo =  58ms, Medio =  57ms
)