2015-04-02 47 views
-2

一個例子是http://www.gametracker.com/,除了我只是想檢查並看看服務器是否在線以及是否顯示 服務器:xxx.xxx.xx.xx = ONLINE(綠燈)並且當它離線顯示時 服務器: xxx.xxx.xx.xx =離線(紅燈)。如何查看遊戲服務器是否在線,然後在我的網站上顯示該遊戲服務器?

+0

您可以使用IF語句,是一個SQL服務器? – anson920520 2015-04-02 01:49:04

+0

我希望能夠做到gametracker在線遊戲服務器正在做的事情。我在garrys mod上有一個遊戲服務器,我希望能夠ping服務器並查看它是否在線,如果它是網站將顯示如此。如果不是,那麼它不會。 – Chaotic 2015-04-02 01:49:48

回答

0

在終端(蘋果機)/命令提示符(Windows),curl http://stackoverflow.com會做

2

假設你的遊戲服務器有一個端口號...

function checkserveronline($ip, $port) { 
    $fp = fsockopen($ip, $port, $errno, $errstr, 5); 
    if(!$fp){ 
     return "offline"; 
    } else { 
     return "online"; 
    } 
} 

echo "<img src='/images/" . checkserveronline($ip, 80) . ".png' />"; 

在這種情況下,如果一個IP: 80(HTTP端口)處於脫機狀態,則將返回offline.png,否則返回online.png

這是我自己的功能,你應該做出自己的修改。

$ip = gethostbyname($domainname); // use this in case you don't know the ip. 

FYR:
http://php.net/manual/en/function.fsockopen.php
http://php.net/manual/en/function.gethostbyname.php

+0

感謝您的信息。我做了更多的研究。 – Chaotic 2015-04-02 02:04:45