本文實(shí)例講述了PHP基于socket實(shí)現(xiàn)的簡單客戶端和服務(wù)端通訊功能。分享給大家供大家參考,具體如下:
服務(wù)器端:
<?php set_time_limit(0); $host="localhost"; $port=1001; //創(chuàng)建一個(gè)連接 $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n"); //綁定socket到端口 $result=socket_bind($socket,$host,$port) or die("cannot bind port to socket\n"); //開始監(jiān)聽這個(gè)端口 $result=socket_listen($socket,4) or die("could not set up socket listen\n"); //接受連接,另一個(gè)socket來處理通信 $msgsock=socket_accept($socket) or die("cannot accept incoming connection\n"); if($msgsock){ echo date("Y-m-d H:i:s D a"); } //讀取客戶端發(fā)送過來的信息 $input=socket_read($msgsock,1024) or die("cannot read input\n"); $input=trim($input); $output=strrev($input)."順序反過來了吧\n"; //對接收到的信息進(jìn)行處理,然后返回到客戶端 socket_write($msgsock,$output,strlen($output)) or die("cannot write"); //關(guān)閉socket連接 socket_close($msgsock); socket_close($socket); ?>
客戶端:
<?php set_time_limit(0); $host="localhost"; $port=1001; //創(chuàng)建一個(gè)socket $socket=socket_create(AF_INET,SOCK_STREAM,SOL_TCP)or die("cannot create socket\n"); $conn=socket_connect($socket,$host,$port) or die("cannot connect server\n"); if($conn){echo "client connect ok!";} socket_write($socket,"hello world!") or die("cannot write data\n"); $buffer=socket_read($socket,1024,PHP_NORMAL_READ); if($buffer){ echo "response was:".$buffer."\n"; } socket_close($socket); ?>
更多關(guān)于PHP相關(guān)內(nèi)容感興趣的讀者可查看本站專題:《php socket用法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)學(xué)運(yùn)算技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O(shè)計(jì)入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設(shè)計(jì)算法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設(shè)計(jì)有所幫助。
【網(wǎng)站聲明】本站除付費(fèi)源碼經(jīng)過測試外,其他素材未做測試,不保證完整性,網(wǎng)站上部分源碼僅限學(xué)習(xí)交流,請勿用于商業(yè)用途。如損害你的權(quán)益請聯(lián)系客服QQ:2655101040 給予處理,謝謝支持。