您正在使用 IPV4 [34.228.52.21] 访问本站,您本次已经查看了 1 页
用户名: 密 码: 验证码:     用QQ登录本站
首页 软件 编程 笑话 知识 公告 台风 日历 计算器
[公益]保护绿色环境,构建和谐社会       悟空收录网      

【腾讯云】云服务器、云数据库、COS、CDN、短信等云产品特惠热卖中      
[公益] 地球是我家,绿化靠大家      
2023年 圣诞节 023
2024年 腊八节 047
2024年 元 旦 030
2024年 春 节 070
 
您现在的位置:首页 >> PHP >> 内容
本类新增
本类热门文章
php实现的ping端口函数实例
内容摘要: ?php/**@authorxujiajay*@date2010-10-7*@function可以ping端口的php函数**/error_reporting(E_ERROR);header('content-Type:text/html;charset=utf-8');set_time_limit(120);$host=isset($_POST['url'......
<?php

/*

*@authorxujiajay

*@date2010-10-7

*@function可以ping端口的php函数

*

*/

error_reporting(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'])?chop($_POST['duankou']):'80';

$num=10;

functionmicrotime_float()

{

list($usec,$sec)=explode("",microtime());

return((float)$usec+(float)$sec);

}

functiongetsoft($host,$port)

{

$fp=@fsockopen($host,$port,&$errno,&$errstr,3);

if(!$fp)return'unknown';

$get="GET/HTTP/1.1\r\nHost:".$host."\r\nConnection:Close\r\n\r\n";

@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],'Server')){$k=$i;break;}

}

if(!stristr($array[$k],'Server'))return'unknown';

elsereturnstr_replace('Server','服务器软件',$array[$k]);

}

functionping($host,$port)

{

$time_start=microtime_float();

$ip=gethostbyname($host);

$fp=@fsockopen($host,$port,&$errno,&$errstr,1);

if(!$fp)return'Requesttimedout.'."\r\n";

$get="GET/HTTP/1.1\r\nHost:".$host."\r\nConnection:Close\r\n\r\n";

@fputs($fp,$get);

@fclose($fp);

$time_end=microtime_float();

$time=$time_end-$time_start;

$time=ceil($time*1000);

return'Replyfrom'.$ip.':time='.$time.'ms';

}

if(isset($_POST['url'])&&isset($_POST['duankou']))

{

echo'<fontcolor="#FF0000">'.getsoft($host,$port).'</font>';

echo'Pinging'.$host.'['.gethostbyname($host).']withPort:'.$port.'ofdata:'."\r\n";

ob_flush();

flush();

for($i=0;$i<$num;$i++)

{

echoping($host,$port);

ob_flush();

flush();

sleep(1);

}

}

?>

<formmethod="POST">

域名/IP:<inputtype="text"name="url"value="<?phpecho$host;?>"size="50">

端口:<inputtype="text"name="duankou"value="<?phpecho$port;?>"size="10">

<inputtype="submit"value="ping">

</form>

版权声明:本内容来源于网络,如有侵犯您的版权,请联系站长,本站收到您的信息后将及时处理。
上一篇:PHP检查端口是否可以被绑定的方法 下一篇:PHP如何获取当前主机、域名、网址、路径
发布日期:2023/11/20
手机扫二维码直达本页
发布时间:16:12:24
点  击:23
录  入:星儿
相关文章
Baidu
YiJiaCMS 7.3.5 build231025(MSSQL) 闽ICP备05000814号-1
本空间由腾讯云(轻量应用服务器)提供,Cloudflare提供加速防护
运行时间载入中.....