php ソケットをテストする方法
この投稿は d6965921d によって最終編集されました: 2014-07-13 09:57:41
<?php<br />error_reporting(E_ALL);<br />set_time_limit(0);<br />//ob_implicit_flush();<br /><br />$address = '127.0.0.1';<br />$port = 10005;<br />//创建端口<br />if( ($sock = socket_create(AF_INET, SOCK_STREAM, SOL_TCP)) === false) {<br /> echo "socket_create() failed :reason:" . socket_strerror(socket_last_error()) . "\n";<br />}<br /><br />//绑定<br />if (socket_bind($sock, $address, $port) === false) {<br /> echo "socket_bind() failed :reason:" . socket_strerror(socket_last_error($sock)) . "\n";<br />}<br /><br />//监听<br />if (socket_listen($sock, 5) === false) {<br /> echo "socket_bind() failed :reason:" . socket_strerror(socket_last_error($sock)) . "\n";<br />}<br /><br />do {<br /> //得到一个链接<br /> if (($msgsock = socket_accept($sock)) === false) {<br /> echo "socket_accepty() failed :reason:".socket_strerror(socket_last_error($sock)) . "\n";<br /> break;<br /> }<br /> //welcome 发送到客户端<br /> $msg = "<font color='red'>server send:welcome</font><br/>";<br /> socket_write($msgsock, $msg, strlen($msg));<br /> echo 'read client message\n';<br /> $buf = socket_read($msgsock, 8192);<br /> $talkback = "received message:$buf\n";<br /> echo $talkback;<br /> if (false === socket_write($msgsock, $talkback, strlen($talkback))) {<br /> echo "socket_write() failed reason:" . socket_strerror(socket_last_error($sock)) ."\n";<br /> } else {<br /> echo 'send success';<br /> }<br /> socket_close($msgsock);<br />} while(true);<br />//关闭socket<br />socket_close($sock);<br /><br /><br />?>
ログイン後にコピー
このコードを実行するにはどうすればよいですか?ページを開いたら。 。
私が作成したこのソケットの効果をテストするにはどうすればよいですか? 。 。 。 。 。 。 。テストを成功させてからソケット クライアントを作成したいと考えています。以前は、http は URL を直接入力するだけでした。 。 。ソケットをテストする方法がわかりません。 。
------解決策---------ポートを変更してみてください