国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發(fā) > PHP > 正文

淺析PHP Socket技術(shù)

2024-05-04 23:12:18
字體:
供稿:網(wǎng)友

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

使用并發(fā)起一個(gè)阻塞式(block)連接,即服務(wù)器如果不返回?cái)?shù)據(jù)流,則一直保持連接狀態(tài),一旦有數(shù)據(jù)流傳入,取得內(nèi)容后就立即斷開連接。代碼如下:

復(fù)制代碼 代碼如下:


<?php
$host = ; //這個(gè)地址隨便,用新浪的也行,主要是測(cè)試用,哪個(gè)無所謂
$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";
//允許連接的超時(shí)時(shí)間為1.5秒
$connectionTimeout = 1.5;
//允許遠(yuǎn)程服務(wù)器2秒鐘內(nèi)完成回應(yīng)
$responseTimeout = 2;
//建立一個(gè)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ā)送請(qǐng)求字符串
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);
?>

發(fā)表評(píng)論 共有條評(píng)論
用戶名: 密碼:
驗(yàn)證碼: 匿名發(fā)表
主站蜘蛛池模板: 桃园县| 阿拉善右旗| 友谊县| 西畴县| 尼玛县| 南丹县| 筠连县| 容城县| 喀喇沁旗| 天等县| 澳门| 定边县| 栖霞市| 西盟| 林芝县| 孝昌县| 台州市| 大化| 龙山县| 榆林市| 茌平县| 大方县| 宜阳县| 宜兰市| 且末县| 孟州市| 塔城市| 长治县| 社旗县| 云和县| 汪清县| 安庆市| 通州市| 永年县| 自治县| 泰宁县| 孟州市| 霍邱县| 永平县| 北辰区| 保山市|