この記事では、PHPがソケットサーバーにデータを送受信する方法について説明します。参考のためにみんなで共有してください。詳細は次のとおりです。
PHP で他のプログラムにデータを送信する場合は、php のソケット関数を使用してインスタンスを作成する必要があります。コードの例を簡単に見てみましょう。コードは次のとおりです:
/*socket收发数据 @host(string) socket服务器IP @post(int) 端口 @str(string) 要发送的数据 @back 1|0 socket端是否有数据返回 返回true|false|服务端数据 */ function sendSocketMsg($host,$port,$str,$back=0){ $socket = socket_create(AF_INET,SOCK_STREAM,0); if ($socket < 0) return false; $result = @socket_connect($socket,$host,$port); if ($result == false)return false; socket_write($socket,$str,strlen($str)); if($back!=0){ $input = socket_read($socket,1024); socket_close ($socket); return $input; }else{ socket_close ($socket); return true; } }
socker_read の 2 番目の部分 パラメータは、読み取るバイト数を指定するために使用され、クライアントから取得するデータのサイズを制限するために使用できます
sock 関数の紹介
socket_accept() | |
socket_bind() | |
socket_clear_error() | |
socket _close( ) | |
socket_connect() | |
socket_create_listen() | |
socket_create_p air() | |
socket_create() | |
socket_get_option() | |
socket_getpeername() | |
socket_getsockname() | |
socket_iovec_add() | |
socket_iovec_alloc() | |
socket_iovec_delete() | |
socket_iovec_fetch() | |
sock et_iovec_free( ) | |
socket_iove c_set() | |
socket_last_error() | |
socket_list en() | |
socket_read() | |
socket_readv() | |
socket_recv() | |
socket_recvfrom() | |
socket_recvmsg() | |
socket_select() | |
socket_send() | |
socket_sendmsg() | |
socket_sendto() | |
socket_set_block() | |
socket_set_nonblock() | |
socket_set_option() | |
socket_shutdown() | |
socket_strerror() | |
socket_write() | |
socket_writev() | |