stream_socket_pair
創建一對完全一樣的網絡套接字連接流
函數名稱: stream_socket_pair()
函數描述: stream_socket_pair() 函數創建一對相互連接的流套接字,用於進程間通信。
適用版本: PHP 5 >= 5.1.0, PHP 7
語法: stream_socket_pair(int $domain, int $type, int $protocol)
參數:
返回值:
示例:
// 创建流套接字对$sockets = stream_socket_pair(AF_UNIX, SOCK_STREAM, 0); if ($sockets === false) { echo "创建流套接字对失败"; exit; } // 在父进程中写入数据到套接字$data = "Hello child process!"; fwrite($sockets[0], $data); // 在子进程中读取套接字中的数据$receivedData = fread($sockets[1], strlen($data)); // 输出从父进程传递给子进程的数据echo $receivedData; // 关闭套接字fclose($sockets[0]); fclose($sockets[1]);
在上面的示例中,我們首先使用stream_socket_pair()
函數創建了一對流套接字。然後,我們在父進程中向套接字寫入數據,並在子進程中從套接字中讀取數據。最後,我們輸出從父進程傳遞給子進程的數據,並關閉套接字。
請注意, stream_socket_pair()
函數只能在支持套接字的操作系統上使用,如Linux 或Unix。