新聞中心
如何使用PHP進(jìn)行socket套節(jié)字的連接?針對這個問題,這篇文章詳細(xì)介紹了相對應(yīng)的分析和解答,希望可以幫助更多想解決這個問題的小伙伴找到更簡單易行的方法。
socket通常也稱作"套接字",用于描述IP地址和端口 , 是一個通信鏈的句柄。應(yīng)用程序通常通過“套接字”先服務(wù)器發(fā)出請求或者應(yīng)答網(wǎng)絡(luò)請求。
根據(jù)鏈接啟動的方式以及本地套接字要連接的目標(biāo) , 套節(jié)字之間的連接過程可以分為三個步驟:
1、服務(wù)器監(jiān)聽:是服務(wù)器端套接字并不定位具體的客戶端套接字 , 而是處于等待連接的狀態(tài) ,實時監(jiān)控網(wǎng)絡(luò)狀態(tài)。
2、客戶端請求:是指由客戶端的套接字提出連接請求,要連接的目標(biāo)是服務(wù)器端的套接字。為此,客戶端的套接字必須首先面熟它要連接的服務(wù)器的套接字,指出服務(wù)器套接字的地址和端口號 , 然后就像服務(wù)器端套接字提出連接請求。
3、連接確認(rèn):是指當(dāng)服務(wù)器端套接字監(jiān)聽到或者說接收到客戶端套接字的連接請求,他就響應(yīng)客戶端套接字的請求,建立一個新的線程,把服務(wù)器端套接字的描述發(fā)給客戶端 , 一旦客戶確認(rèn)了此描述 , 連接就建立好了。而服務(wù)器端套接字繼續(xù)處于監(jiān)聽狀態(tài),繼續(xù)接收其他客戶端接字的鏈接請求。
一、測試環(huán)境:
服務(wù)器ip:xxx.xxx.xxx.1
客戶端ip: xxx.xxx.xxx.2
二 、測試過程:
客戶端服務(wù)器將在本機(jī)(xxx.xxx.xxx.1)通過socket發(fā)送數(shù)據(jù)到服務(wù)端(xxx.xxx.xxx.2)的socket服務(wù)器上,服務(wù)端收到客戶端發(fā)送的數(shù)據(jù)后返回一些給客戶端.
三、服務(wù)端文件內(nèi)容:
四、客戶端文件內(nèi)容:
五、在服務(wù)端socket服務(wù)啟動進(jìn)程。
#/usr/local/php/bin/php -a/home/server.php Interactive mode enable 互動模式啟動
六、服務(wù)端啟動后查看啟動的進(jìn)程及端口
#netstat -tnlp |grep 10008 tcp 0 0 192.168.13:10008 0.0.0.0:* LISTEN 28892/php
七、在客戶端(192.168.1.2)上執(zhí)行傳輸
#/usr/local/php/bin/php -a client.php Interactive mode enabled
八、回到服務(wù)器端上查看接受到的信息。
#/usr/local/php/bin/php -a /home/server.php Interactive mode enabled Socket connected send data client Wrote to socket Buffer:This data will Send to server!
關(guān)于 如何使用PHP進(jìn)行socket套節(jié)字的連接問題的解答就分享到這里了,希望以上內(nèi)容可以對大家有一定的幫助,如果你還有很多疑惑沒有解開,可以關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道了解更多相關(guān)知識。
網(wǎng)頁名稱:如何使用PHP進(jìn)行socket套節(jié)字的連接-創(chuàng)新互聯(lián)
網(wǎng)頁網(wǎng)址:http://fisionsoft.com.cn/article/cehsoh.html