Home > Backend Development > PHP Tutorial > PHP code to determine whether the server port is open_PHP tutorial

PHP code to determine whether the server port is open_PHP tutorial

WBOY
Release: 2016-07-13 17:42:29
Original
822 people have browsed it

Record it for future reference

<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
Host:"</span><span>.$host."
Connection: Close

";  </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>."
";  </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>
Copy after login

This article is excerpted from http://www.cnblogs.com/luoine/archive/2010/12/01/1893156.html

www.bkjia.comtruehttp: //www.bkjia.com/PHPjc/486053.htmlTechArticleRecord it for future use? php $ host = www.google.com;//The address to be pinged, also It can be IP $port = 80; //Port to ping $num = 3; functionmicrotime_float() { list($usec,$s...
source:php.cn
Statement of this Website
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn
Popular Tutorials
More>
Latest Downloads
More>
Web Effects
Website Source Code
Website Materials
Front End Template