【发布时间】:2011-12-23 06:23:52
【问题描述】:
我有以下功能,到目前为止我还没有工作。我想 ping 一个 IP 地址,然后回显该 IP 是否存在。
function pingAddress($ip){
$pingresult = shell_exec("start /b ping $ip -n 1");
$dead = "Request timed out.";
$deadoralive = strpos($dead, $pingresult);
if ($deadoralive == false){
echo "The IP address, $ip, is dead";
} else {
echo "The IP address, $ip, is alive";
}
}
当我使用示例调用此函数时:
pingAddress("127.0.0.1")
回显结果总是“死”——无论如何。
有人可以帮我解决我哪里出错了吗? 和/或是否有更好的方法可以达到相同的结果?
非常感谢。
更新:已修改代码以包含双引号,但仍然得到相同(不正确)的结果。
【问题讨论】:
-
对
shell_exec的调用需要使用双引号,否则$ip将不会被替换。 -
嗨 Clive,谢谢 - 我现在使用了双引号,但仍然得到相同的结果。
标签: php ping shell-exec