Обнаружение сервера в сети с несколькими массивами - PullRequest
0 голосов
/ 06 июня 2019

Heyo, собирая страницу онлайн / оффлайн обнаружения для нашего кластера серверов. Мне удалось заставить часть fsockopen работать с массивом, сейчас я пытаюсь связать их со вторым массивом, чтобы отобразить конкретный сервер и порт.

Действительно новичок в PHP, так что будьте осторожны со мной! Попытка объединить два массива вместе без удачи. Очевидно, что я делаю что-то не так, просто не могу понять!

$server1 = 'x.x.x.x';
$port1 = [
11000,
11002,
11004,
];
$S1 = [
A1,
A2,
A3,
];

foreach ($port1 as $key => $port1) {
    $fp = @fsockopen($server1,$port1,$errno, $errstr);
    echo "Ping $server1:$port1 $S1 ==> ";
    if ($fp) {
   echo '<p style="color: green; text-align: left">
      "ONLINE"
      </p>';
} else{
   echo '<p style="color: red; text-align: left">
      $S1 OFFLINE
      </p>';

1 Ответ

0 голосов
/ 06 июня 2019

Если массивы $port1 и $S1 синхронизированы друг с другом, то вы можете использовать ключ из вашего цикла ($key), чтобы получить значение из второго массива ...

echo "Ping $server1:$port1 ".$S1[$key]." ==> ";
...