-5

我不明白为什么我必须$output为我的 php 代码声明一个数组。我可以$status改为使用返回值 0 或 1。

<?php
   exec ("ping -c 3  $ip",$output, $status );
   if ($status == 0)
   {
     echo "host is up";
   }
   else
   {
     echo "host is down";
   }
?>
4

1 回答 1

1

为了传递第三个参数,你还必须传递第二个参数,所以你必须在那里放一些东西。如果您对输出不感兴趣,请按照文档中的说明执行操作:

如果您不希望函数附加元素,请在将数组传递给 exec() 之前对数组调用 unset()。

但是,我只是自己尝试过,它不起作用。它总是用输出填充变量。因此,如果您对输出不感兴趣,请使用 shell 语法来重定向它:

exec ("ping -c 3  $ip >/dev/null 2>&1",$output, $status );
于 2013-05-04T00:42:43.497 回答