PHP基于socket實現(xiàn)的簡單客戶端和服務端通訊功能示例
更新時間:2017年07月10日 10:12:12 作者:a771948524
這篇文章主要介紹了PHP基于socket實現(xiàn)的簡單客戶端和服務端通訊功能,可實現(xiàn)服務端接收客戶端發(fā)送的字符串進行翻轉(zhuǎn)操作后返回客戶端的功能,需要的朋友可以參考下
本文實例講述了PHP基于socket實現(xiàn)的簡單客戶端和服務端通訊功能。分享給大家供大家參考,具體如下:
服務器端:
<?php
set_time_limit(0);
$host="localhost";
$port=1001;
//創(chuàng)建一個連接
$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)聽這個端口
$result=socket_listen($socket,4) or die("could not set up socket listen\n");
//接受連接,另一個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";
//對接收到的信息進行處理,然后返回到客戶端
socket_write($msgsock,$output,strlen($output)) or die("cannot write");
//關閉socket連接
socket_close($msgsock);
socket_close($socket);
?>
客戶端:
<?php
set_time_limit(0);
$host="localhost";
$port=1001;
//創(chuàng)建一個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);
?>
更多關于PHP相關內(nèi)容感興趣的讀者可查看本站專題:《php socket用法總結(jié)》、《php字符串(string)用法總結(jié)》、《PHP數(shù)學運算技巧總結(jié)》、《php面向?qū)ο蟪绦蛟O計入門教程》、《PHP數(shù)組(Array)操作技巧大全》、《PHP數(shù)據(jù)結(jié)構(gòu)與算法教程》、《php程序設計算法總結(jié)》及《php常見數(shù)據(jù)庫操作技巧匯總》
希望本文所述對大家PHP程序設計有所幫助。
相關文章
PHP實現(xiàn)負載均衡的加權(quán)輪詢方法分析
這篇文章主要介紹了PHP實現(xiàn)負載均衡的加權(quán)輪詢方法,簡單描述了常見的負載均衡算法,并結(jié)合實例形式分析了加權(quán)輪詢的相關實現(xiàn)技巧,需要的朋友可以參考下
2018-08-08 
