PHP Ping工具第二条If或Else语句

PHP Ping工具第二条If或Else语句,php,html,Php,Html,我对web开发还很陌生,我正在制作一个php ping工具,以查看我们有哪些网站。因为我们有115个站点,所以我选择只显示关闭的站点。在网页上,当没有网站关闭或没有回复ping时,我可以让它显示一条消息,说“没有网站关闭”之类的话。这是带有引导样式的php $counter = ""; foreach ($host1 as $value1) { $counter = $counter + 1; echo "<tr>"; echo '<body bgcolor=

我对web开发还很陌生,我正在制作一个php ping工具,以查看我们有哪些网站。因为我们有115个站点,所以我选择只显示关闭的站点。在网页上,当没有网站关闭或没有回复ping时,我可以让它显示一条消息,说“没有网站关闭”之类的话。这是带有引导样式的php

$counter = "";
foreach ($host1 as $value1) 

{

 $counter = $counter + 1;
  echo "<tr>"; 
  echo '<body bgcolor="#FFFFFF" text="#000000"></body>';       
  //check target IP or domain
  $pingreply = exec("ping -n $count $value1");
  if ( substr($pingreply, -2) == 'ms')
    {

    }
  else 
    {
        #echo "<td width=60><strong><font color='#990000'>DOWN</font></strong></td>";
        echo "<p><fstrong textont size='6'><center><strong><div class='alert alert-danger'>" . $services1[$counter] . " - No Reply</div></strong></center></font></p>";
    }
}
$counter=”“;
foreach($host1作为$value1)
{
$counter=$counter+1;
回声“;
回声';
//检查目标IP或域
$pingreply=exec(“ping-n$count$value1”);
如果(substr($pingreply,-2)='ms')
{
}
其他的
{
#回声“向下”;
回显“”$services1[$counter]。”-无回复;
}
}
有人能帮我吗?我不知道如何在代码中添加第二条else或第二条if语句。

正如我在评论中所说:

$counter = "";
$has_down = false;   // flag, no sites are down yet
foreach ($host1 as $value1) 
{
  $counter = $counter + 1;
  echo "<tr>"; 
  echo '<body bgcolor="#FFFFFF" text="#000000"></body>';       
  //check target IP or domain
  $pingreply = exec("ping -n $count $value1");
  if ( substr($pingreply, -2) == 'ms')
    {

    }
  else 
    {
        #echo "<td width=60><strong><font color='#990000'>DOWN</font></strong></td>";
        echo "<p><fstrong textont size='6'><center><strong><div class='alert alert-danger'>" . $services1[$counter] . " - No Reply</div></strong></center></font></p>";
        // site down, set flag
        $has_down = true;
    }
}

// flag still false, all sites work
if (!$has_down) {
    echo 'There are no sites down';
}
$counter=”“;
$has_down=false;//flag,还没有网站关闭
foreach($host1作为$value1)
{
$counter=$counter+1;
回声“;
回声';
//检查目标IP或域
$pingreply=exec(“ping-n$count$value1”);
如果(substr($pingreply,-2)='ms')
{
}
其他的
{
#回声“向下”;
回显“”$services1[$counter]。”-无回复;
//站点关闭,设置标志
$has_down=true;
}
}
//标记仍然为false,所有站点都工作
如果(!$has_down){
echo“没有站点关闭”;
}
正如我在评论中所说:

$counter = "";
$has_down = false;   // flag, no sites are down yet
foreach ($host1 as $value1) 
{
  $counter = $counter + 1;
  echo "<tr>"; 
  echo '<body bgcolor="#FFFFFF" text="#000000"></body>';       
  //check target IP or domain
  $pingreply = exec("ping -n $count $value1");
  if ( substr($pingreply, -2) == 'ms')
    {

    }
  else 
    {
        #echo "<td width=60><strong><font color='#990000'>DOWN</font></strong></td>";
        echo "<p><fstrong textont size='6'><center><strong><div class='alert alert-danger'>" . $services1[$counter] . " - No Reply</div></strong></center></font></p>";
        // site down, set flag
        $has_down = true;
    }
}

// flag still false, all sites work
if (!$has_down) {
    echo 'There are no sites down';
}
$counter=”“;
$has_down=false;//flag,还没有网站关闭
foreach($host1作为$value1)
{
$counter=$counter+1;
回声“;
回声';
//检查目标IP或域
$pingreply=exec(“ping-n$count$value1”);
如果(substr($pingreply,-2)='ms')
{
}
其他的
{
#回声“向下”;
回显“”$services1[$counter]。”-无回复;
//站点关闭,设置标志
$has_down=true;
}
}
//标记仍然为false,所有站点都工作
如果(!$has_down){
echo“没有站点关闭”;
}

添加一个标志。如果至少有一个站点被关闭,则将标志设置为true。如果之后循环标志仍然为false-您没有站点关闭。请添加标志。如果至少有一个站点被关闭,则将标志设置为true。如果在循环标志仍然是假的-你没有网站关闭。这是完美的!非常感谢,我现在可以使用它这么多。如果答案解决了你的问题-接受/投票。嗨,穆德,我还有一个非常快速的问题,我相信这只发送了一个数据包ping。在这段代码中,我能够增加它发送的ping的数量,因为这些站点中有一些是在ADSL连接上的,并且总是丢弃ping,所以即使没有ping,它们也会显示为down。我想知道我是否可以增加ping的次数来阻止这种情况发生。太完美了!非常感谢,我现在可以使用它这么多。如果答案解决了你的问题-接受/投票。嗨,穆德,我还有一个非常快速的问题,我相信这只发送了一个数据包ping。在这段代码中,我能够增加它发送的ping的数量,因为这些站点中有一些是在ADSL连接上的,并且总是丢弃ping,所以即使没有ping,它们也会显示为down。我想知道我是否可以增加ping的次数来阻止这种情况发生。