可能重复:
Pinging an IP address using PHP and echoing the result
如何在php中ping ip地址?并给出结果,就好像你在Windows中的cmd程序
<?php
system(‘ping -c 192.168.0.104’); // Ping IP address.<br>
echo “pinged”;<br>
?>
答案 0 :(得分:19)
$ip = "127.0.0.1";
exec("ping -n 3 $ip", $output, $status);
print_r($output);
输出如下所示
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
)
答案 1 :(得分:17)
试试这个
$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!";
注意:这取决于您运行的操作系统。 Windows将默认只有4个ping,而Linux将永远ping。
要在Windows中ping两次,请使用“ping -n 2 host”
要在Linux中ping两次,请使用“ping -c 2 host”
答案 2 :(得分:2)
我只是用那个exec
来谷歌<?php
echo exec("ping www.google.com");
?>
输出是:
Packets: Sent = 4, Received = 0, Lost = 4 (100% loss),