socket_export_stream
將套接字擴展資源導出到封裝套接字的流中
函數名稱:socket_export_stream()
函數描述:socket_export_stream() 函數將一個socket資源導出為一個stream資源。
適用版本:該函數在PHP 4 >= 4.1.0, PHP 5, PHP 7 中可用。
用法:
socket_export_stream ( resource $socket ) : resource|false
參數:
返回值:
示例:
<?php // 创建一个TCP socket $socket = socket_create(AF_INET, SOCK_STREAM, SOL_TCP); if ($socket === false) { echo "socket_create() failed: " . socket_strerror(socket_last_error()) . "\n"; exit; } // 绑定到本地IP和端口 if (socket_bind($socket, '127.0.0.1', 8080) === false) { echo "socket_bind() failed: " . socket_strerror(socket_last_error($socket)) . "\n"; exit; } // 监听连接 if (socket_listen($socket, 5) === false) { echo "socket_listen() failed: " . socket_strerror(socket_last_error($socket)) . "\n"; exit; } // 接受客户端连接 $clientSocket = socket_accept($socket); if ($clientSocket === false) { echo "socket_accept() failed: " . socket_strerror(socket_last_error($socket)) . "\n"; exit; } // 导出socket资源为stream资源 $stream = socket_export_stream($clientSocket); if ($stream === false) { echo "socket_export_stream() failed: " . socket_strerror(socket_last_error($clientSocket)) . "\n"; exit; } // 使用stream资源进行读写操作 fwrite($stream, "Hello, client!"); $response = fread($stream, 1024); // 关闭socket和stream资源 socket_close($clientSocket); fclose($stream); socket_close($socket); ?-->以上示例演示瞭如何使用socket_export_stream() 函數將一個socket資源導出為stream資源,並使用導出後的stream資源進行讀寫操作。