ホームページ >バックエンド開発 >PHPチュートリアル >php で実装された ping ポート関数の例、phppping port example_PHP チュートリアル

php で実装された ping ポート関数の例、phppping port example_PHP チュートリアル

WBOY
WBOYオリジナル
2016-07-13 10:14:141131ブラウズ

phpで実装したpingポート関数の例、phppingポートの例

この記事の例では、PHP で実装された ping ポート関数について説明します。参考のためにみんなで共有してください。

具体的な実装コードは次のとおりです:

コードをコピーします コードは次のとおりです:

/*
 * @author xijiajay
 * @date 2010-10-7
 * @function 可能ping端子口のphp関数数
 *
 */
    エラー報告(E_ERROR);
    header("content-Type: text/html; charset=utf-8");
    set_time_limit(120);
    $host = isset($_POST['url']) ? Chop(str_replace('http://','',$_POST['url'])) : 'www.baidu.com';
    $port = isset($_POST['duankou']) ?チョップ($_POST['ドゥアンコウ']) : '80';
    $num = 10;
    関数 microtime_float()
    {
            list($usec, $sec) =explode(" ", microtime());
            return ((float)$usec + (float)$sec);
    }
    関数 getsoft($host,$port)
    {
            $fp = @fsockopen($host,$port,&$errno,&$errstr,3);
            if(!$fp) '不明' を返します;
            $get = "GET / HTTP/1.1rnHost:".$host."rnConnection: Closernrn";
            @fputs($fp,$get);
            $data = '';
            while ($fp && !feof($fp))
            $data .= fread($fp, 1024);
            @fclose($fp);
            $array =explode("n",$data);
            $k = 2;
            for($i = 0;$i <20;$i++)
            {
                    if(stristr($array[$i],'サーバー')){$k = $i;休憩;}
            }
            if(!stristr($array[$k],'サーバー')) '不明' を返します;
            else return str_replace('Server','服务器软件',$array[$k]);
    }
    関数 ping($host,$port)
    {
            $time_start = microtime_float();
            $ip = gethostbyname($host);
            $fp = @fsockopen($host,$port,&$errno,&$errstr,1);
            if(!$fp) return 'リクエストがタイムアウトしました。'."rn";
            $get = "GET / HTTP/1.1rnHost:".$host."rnConnection: Closernrn";
            @fputs($fp,$get);
            @fclose($fp);
            $time_end = microtime_float();
            $time = $time_end - $time_start;
            $time = ceil($time * 1000);
            return ''.$ip.' からの返信: time='.$time.'ms';
    }
    if(isset($_POST['url']) && isset($_POST['duankou']))
    {
            echo ''.getsoft($host,$port).'';
            echo 'ping '.$host.' ['.gethostbyname($host).'] ポート:'.$port.'データの数:'."rn";
            ob_flush();
            フラッシュ();
            for($i = 0;$i             {
エコー ping($host,$port);
ob_flush();
フラッシュ();
睡眠(1);
}
}
?>
<フォームメソッド="POST">
ドメイン名/IP: ポート:



この記事で説明した内容が皆様の PHP プログラミング設計に役立つことを願っています。

http://www.bkjia.com/PHPjc/910606.html

tru​​ehttp://www.bkjia.com/PHPjc/910606.html技術記事 phpで実装したpingポート関数の例、phpppingポートの例 この記事ではphpで実装したpingポート関数について説明します。参考のためにみんなで共有してください。 具体的な実装コードは次のとおりです: コードをコピーします...
声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。