您现在的位置是:首页
>
走进黑暗pooka解析 深入解析fsockopen与pfsockopen的区别
深入解析f ocko e 与 f ocko e 的区别 按手册上说 这两个函数的唯一区别是 f ocko e 是持续连接 而f ocko e 不是我写了个代码了一下:复制代码 代码如下: lt ?

深入解析fsockopen与pfsockopen的区别
按手册上说 这两个函数的唯一区别是 pfsockopen是持续连接 而fsockopen不是我写了个代码了一下:
复制代码 代码如下: <?php $data=" D D BC FFFFFFFF"; // $host = ; $url = "/aa php"; $pffirst = false; $times = ; $startTime = microtime(true); for ($index = ; $index < $times; $index++) { echo Post($host $url $data $pffirst) "<hr><br />"; } $middleTime = microtime(true); for ($index = ; $index < $times; $index++) { echo Post($host $url $data !$pffirst) "<hr><br />";; } $endTime = microtime(true); echo ($pffirst?"pfsocket":"fsocket") ":" ($middleTime $startTime); echo "<br />"; echo ($pffirst?"fsocket":"pfsocket") ":" ($endTime $middleTime); $count= ; //发包函数 function Post($host $url $data $p) { global $count; $func = $p?"pfsockopen":"fsockopen"; $conn = $func($host $errno $errstr ); if (!$conn) { echo "$errstr ($errno)<br />n"; return; } $header = "POST " $url " HTTP/ rn"; $header = "Host : {$host}rn"; $header = "Content type: application/x form urlencodedrn"; $header = "Content Length:" strlen($data) "rn"; $header = "Connection: Keep Alivernrn"; $header = "{$data}rnrn"; fwrite($conn $header); $count++; echo $count $header "<br /><br />"; $resp= ; //while (!feof($conn)) { // $resp = fgets($conn); //} //fclose($conn); return $resp; } ?> lishixinzhi/Article/program/PHP/201311/20862 很赞哦! (1026)