サーバーポートが開いているかどうかを判断する PHP コード
Jun 21, 2016 am 08:55 AM
host
nbsp
quot
time
今後の参考のために記録してください
<ol class="dp-xml"> <li class="alt"><span><span class="tag"><?</span><span class="tag-name">php</span><span> </span></span></li><li><span>$</span><span class="attribute">host</span><span> = </span><span class="attribute-value">'www.google.com'</span><span>; //要ping的地址,也可以是IP </span></li><li class="alt"><span>$</span><span class="attribute">port</span><span> = </span><span class="attribute-value">'80'</span><span>; //要ping的端口 </span></li><li><span>$</span><span class="attribute">num</span><span> = </span><span class="attribute-value">3</span><span>; </span></li><li class="alt"><span>function microtime_float() </span></li><li><span>{ </span></li><li class="alt"><span>list($usec, $sec) = explode(" ", microtime()); </span></li><li><span>return ((float)$usec + (float)$sec); </span></li><li class="alt"><span>} </span></li><li><span>function ping($host,$port) </span></li><li class="alt"><span>{ </span></li><li><span>$</span><span class="attribute">time_start</span><span> = </span><span class="attribute-value">microtime_float</span><span>(); </span></li><li class="alt"><span>$</span><span class="attribute">ip</span><span> = </span><span class="attribute-value">gethostbyname</span><span>($host); </span></li><li><span>$</span><span class="attribute">fp</span><span> = @fsockopen($host,$port,&$errno,&$errstr,1); </span></li><li class="alt"><span>if(!$fp) return 'replay time out!'; </span></li><li><span>$</span><span class="attribute">get</span><span> = </span><span class="attribute-value">"GET / HTTP/1.1\r\nHost:"</span><span>.$host."\r\nConnection: Close\r\n\r\n"; </span></li><li class="alt"><span>@fputs($fp,$get); </span></li><li><span>@fclose($fp); </span></li><li class="alt"><span>$</span><span class="attribute">time_end</span><span> = </span><span class="attribute-value">microtime_float</span><span>(); </span></li><li><span>$</span><span class="attribute">time</span><span> = $time_end - $time_start; </span></li><li class="alt"><span>$</span><span class="attribute">time</span><span> = </span><span class="attribute-value">ceil</span><span>($time * 1000); </span></li><li><span>return 'Reply from '.$ip.': </span><span class="attribute">time</span><span>='.$time.'</span><span class="attribute-value">ms</span><span class="tag"><</span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span>'; </span></span></li> <li class="alt"><span>} </span></li> <li> <span>echo 'Pinging '.$host.' ['.gethostbyname($host).'] with Port:'.$port.' of data:</span><span class="tag"><</span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span class="tag"><</span><span class="tag-name">br</span><span> </span><span class="tag">/></span><span>'."\r\n"; </span> </li> <li class="alt"> <span>for($</span><span class="attribute">i</span><span> = </span><span class="attribute-value">0</span><span>;$i </span><span class="tag"><</span><span> $num;$i++) </span></li><li><span>{ </span></li><li class="alt"><span>ping($host,$port); </span></li><li><span>sleep(1); </span></li><li class="alt"><span>ob_flush(); </span></li><li><span>flush(); </span></li><li class="alt"><span>} </span></li><li><span class="tag">?></span><span> </span> </li> </ol>
ログイン後にコピー
この記事は http://www.cnblogs.com/luoine/archive/2010/12/01/1893156.html からの抜粋です
このウェブサイトの声明
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

人気の記事
レポ:チームメイトを復活させる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
スプリットフィクションを打ち負かすのにどれくらい時間がかかりますか?
3週間前
By DDD
ハローキティアイランドアドベンチャー:巨大な種を手に入れる方法
3週間前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.説明されたエネルギー結晶と彼らが何をするか(黄色のクリスタル)
1週間前
By 尊渡假赌尊渡假赌尊渡假赌

ホットな記事タグ

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック
Gmailメールのログイン入り口はどこですか?
7287
9


Java チュートリアル
1622
14


CakePHP チュートリアル
1342
46


Laravel チュートリアル
1259
25


PHP チュートリアル
1206
29



Windows 11 でウィンドウの境界線の設定を調整する方法: 色とサイズを変更する

Windows 11 シャットダウン プロンプト タスク ホスト ウィンドウ タスク ホストがシャットダウン タスク ソリューションを実行しています

Windows 11でタイトルバーの色を変更するにはどうすればよいですか?

Windows 11 でタスクバーのサムネイル プレビューを有効または無効にする方法

Windows 11/10修復におけるOOBELANGUAGEエラーの問題

Windows 11 で aggregator host.exe が安全かどうかを確認する方法
