乙個菜鳥朋友,突然問了我這個問題...現在稍稍有點時間,就寫了乙個簡單的例子給他,順便貼上來
伺服器端:
<?php /**
* @author 鄒顥 [email protected]
*/class socketserver
private function _showerror($error)
/*** 開始進行socket伺服器端監聽埠
*/public function start()
// 繫結
if (socket_bind ( $sock, $this->_address, $this->_port ) === false)
// 監聽
if (socket_listen ( $sock, 5 ) === false)
do \r\n";
//接受客戶端傳過來的字串
$msg=$this->read($client_socket);
echo "client:\r\n";
//伺服器向客戶端傳值
$my_msg="i am fine,think you\r\n";
$this->send($client_socket,$my_msg);
}/**
* 這段**給你參考,用來判斷是否有客戶端主動失去連線
else}}
*/}while(true);
} /**
* 傳送資料給客戶端
*/public function send($client_socket,$str)
/*** 從客戶端接受資料
*/public function read($client_socket) }
$socket_server =new socketserver();
$socket_server->start();//開始監聽
客戶端:
<?php /**
* @author 鄒顥 [email protected]
*/class socketserver
private function _showerror($error)
/*** 開始進行socket伺服器端監聽埠
*/public function start()
// 繫結
if (socket_bind ( $sock, $this->_address, $this->_port ) === false)
// 監聽
if (socket_listen ( $sock, 5 ) === false)
do \r\n";
//接受客戶端傳過來的字串
$msg=$this->read($client_socket);
echo "client:\r\n";
//伺服器向客戶端傳值
$my_msg="i am fine,think you\r\n";
$this->send($client_socket,$my_msg);
}/**
* 這段**給你參考,用來判斷是否有客戶端主動失去連線
else}}
*/}while(true);
} /**
* 傳送資料給客戶端
*/public function send($client_socket,$str)
/*** 從客戶端接受資料
*/public function read($client_socket) }
$socket_server =new socketserver();
$socket_server->start();//開始監聽
注意事項:伺服器端請用cli模式執行,cgi模式會超時,新手常喜歡犯的錯誤.什麼是cli模式,簡單的說就是用命令列去執行,而不要用遊覽器開啟,否則會超時的
phpsocket客戶端以及伺服器例子
乙個菜鳥朋友,突然問了我這個問題.現在稍稍有點時間,就寫了乙個簡單的例子給他,順便貼上來 伺服器端 author 鄒顥 zouhao619 gmail.com class socketserver private function showerror error 開始進行socket伺服器端監聽埠 ...
php socket客戶端時的超時問題
連線socket分為連線超時和讀取超時 sock stream socket client www.google.com 80 errno,errstr,2 那個數字是連線超時 比如連線google 2秒就返回錯誤 這樣就不會一直等在那了 stream set timeout sock,5 這個數字...
php socket客戶端及伺服器端應用例項
經常有朋友會對php的socket應用充滿疑惑,本文就以例項 作一講解,希望能對初學php的朋友起到一點幫助作用 具體 如下 1.伺服器端 class socketserver private function showerror error 開始進行socket伺服器端監聽埠 public fun...