2012-11-08 9 views
11

Eventuali duplicati:
Pinging an IP address using PHP and echoing the resultcome il ping degli indirizzi IP in php e dare risultati

Come si fa a Ping An indirizzi IP in php. e dare i risultati come se si è in programma cmd in Windows

<?php 

    system(‘ping -c 192.168.0.104’); // Ping IP address.<br> 

    echo “pinged”;<br> 

?> 
+0

Si ottiene risposta da questo si prega di controllare http://stackoverflow.com/questions/8030789/pinging-an-ip-address-using-php-and-echoing-the-result – Elby

risposta

17
$ip = "127.0.0.1"; 
exec("ping -n 3 $ip", $output, $status); 
print_r($output); 

output è simile sotto

Array 
(
    [0] => 
    [1] => Pinging 127.0.0.1 with 32 bytes of data: 
    [2] => Reply from 127.0.0.1: bytes=32 time<1ms TTL=128 
    [3] => Reply from 127.0.0.1: bytes=32 time<1ms TTL=128 
    [4] => Reply from 127.0.0.1: bytes=32 time<1ms TTL=128 
    [5] => 
    [6] => Ping statistics for 127.0.0.1: 
    [7] =>  Packets: Sent = 3, Received = 3, Lost = 0 (0% loss), 
    [8] => Approximate round trip times in milli-seconds: 
    [9] =>  Minimum = 0ms, Maximum = 0ms, Average = 0ms 
) 
+6

Ho ottenuto la matrice vuota come questa, Matrice() puoi aiutarmi? –

+1

Se hai un array vuoto 'Array()' prova a usare '-c 3' invece di' -n 3'. Potresti avere un server Linux al posto di Windows. Il ping di Linux non riconosce l'opzione '-n'. – Palo

+0

3 significa che il comando verrà eseguito tre volte? –

11

Prova questa

$host="192.168.0.104"; 

exec("ping -c 4 " . $host, $output, $result); 

print_r($output); 

if ($result == 0) 

echo "Ping successful!"; 

else 

echo "Ping unsuccessful!"; 

Nota: Questo dipende dal sistema operativo in esecuzione. Windows imposterà solo 4 ping mentre Linux eseguirà il ping per sempre.

Per eseguire il ping due volte in Windows, utilizzare il "ping -n 2 host"

Per eseguire il ping due volte in Linux, usare "ping -c 2 host"

1

Ho appena eseguito il ping di Google con quella exec

<?php 
echo exec("ping www.google.com"); 
?> 

uscita era:

Packets: Sent = 4, Received = 0, Lost = 4 (100% loss), 
Problemi correlati