色尼玛亚洲综合影院,亚洲3atv精品一区二区三区,麻豆freexxxx性91精品,欧美在线91

淺析PHP Socket技術(shù)

phpsocketSocket位于TCP/IP協(xié)議的傳輸控制協(xié)議,提供客戶-服務(wù)器模式的異步通信,即客戶向服務(wù)器發(fā)出服務(wù)請求,服務(wù)器接收到請求后,提供相應(yīng)的反饋或服務(wù)!我練習(xí)了一個最基本的例子:

使用并發(fā)起一個阻塞式(block)連接,即服務(wù)器如果不返回數(shù)據(jù)流,則一直保持連接狀態(tài),一旦有數(shù)據(jù)流傳入,取得內(nèi)容后就立即斷開連接。代碼如下:
復(fù)制代碼 代碼如下:
<?php
$host = www.sohu.com; //這個地址隨便,用新浪的也行,主要是測試用,哪個無所謂
$page = "/index.html";
$port = 80;
$request = "GET $page HTTP/1.1/r/n";
$request .= "Host: $host/r/n";
//$request .= "Referer:$host/r/n";
$request .= "Connection: close/r/n/r/n";
//允許連接的超時時間為1.5秒
$connectionTimeout = 1.5;
//允許遠(yuǎn)程服務(wù)器2秒鐘內(nèi)完成回應(yīng)
$responseTimeout = 2;
//建立一個socket連接
$fp = fsockopen($host, $port, $errno, $errstr, $connectionTimeout);
if (!$fp) {
    throw new Exception("Connection to $hostfailed:$errstr");
} else {
    stream_set_blocking($fp, true);
    stream_set_timeout($fp, $responseTimeout);
}
//發(fā)送請求字符串
fwrite($fp, $request);
//取得返回的數(shù)據(jù)流內(nèi)容
$content = stream_get_contents($fp);
echo $content;
$meta = stream_get_meta_data($fp);
if ($meta['timed_out']) {
    throw new Exception("Responsefrom web services server timed out.");
}
//關(guān)閉Socket連接
fclose($fp);
?>

php技術(shù)淺析PHP Socket技術(shù),轉(zhuǎn)載需保留來源!

鄭重聲明:本文版權(quán)歸原作者所有,轉(zhuǎn)載文章僅為傳播更多信息之目的,如作者信息標(biāo)記有誤,請第一時間聯(lián)系我們修改或刪除,多謝。

主站蜘蛛池模板: 临颍县| 华安县| 河池市| 永安市| 阳新县| 通海县| 长阳| 福清市| 江源县| 清水河县| 皮山县| 开远市| 新密市| 禹城市| 鄂托克前旗| 昭苏县| 青川县| 黄骅市| 平和县| 济阳县| 清镇市| 新营市| 闽清县| 台前县| 兴义市| 三河市| 台中市| 共和县| 钟山县| 石楼县| 武胜县| 嵩明县| 山阴县| 绥棱县| 昔阳县| 杭州市| 潞西市| 曲靖市| 玉林市| 赞皇县| 华蓥市|