0

所以,我有一个名为 $modSites 的简单数组,它只是一个需要 ping 的 url 列表。

我遍历数组:

## Get array length ##

$modLength = count($modSites);

## For loop, until end of array is reached ##

for ( $i = 0; $i < $modLength; x++ );

但现在,我想使用一个 php 类:https ://github.com/geerlingguy/Ping来 ping 每个 URL,并将结果打印在表格中。将数组中的值填充到我可以在下面的代码片段中分配给 $host 的变量中的最有效方法是什么?...所以我可以打印这些值?

require_once('Ping/Ping.php');
$host = 'www.example.com';
$ping = new Ping($host);
$latency = $ping->ping();
if ($latency) {
  print 'Latency is ' . $latency . ' ms';
}
else {
  print 'Host could not be reached.';
}
4

2 回答 2

3

我会做这样的事情:

foreach ($modSites as $site) {
  $ping = new Ping($site);
  $latency = $ping->ping();
  if ($latency) {
    print $latency;
  } else {
    print "failed.";
  }
}

如果您想在通过 foreach 循环时构建一个数组,那么可以使用以下内容:

$latencyArray[$site] = $latency;
于 2013-08-05T22:06:13.940 回答
3

您可以创建单个 Ping 对象并更改主机。您还可以使用 foreach 循环:

require_once('Ping/Ping.php');
$ping = new Ping('');
foreach ($modSites as $site) {
    $ping->setHost($site);
    $latency = $ping->ping();
    if ($latency) {
      print 'Latency is ' . $latency . ' ms';
    }
    else {
      print 'Host could not be reached.';
    }
}
于 2013-08-05T22:08:24.690 回答