php跨进程传递描述符
php 字节流 域套接字 跨进程传递描述符代码案例 服务端: ini_set("display_errors",true); // $socket = socket_create(AF_UNIX,SOCK_STREAM,0); $dir = "/root/fpm"; unlink($dir); socket_bind($socket,$dir); socket_listen($socket,100); while(1) { $connfd = socket_accept($socket); var_dump($connfd); $data = ["controllen" => socket_cmsg_space(SOL_SOCKET,SCM_RIGHTS,3)]; $msg = socket_recvmsg($connfd,$data,0); var_dump($data); }?> 客户端 ini_set("display_errors",true); $socket = socket_create(AF_UNIX,0); $dir = "/root/fpm"; $result = socket_connect($socket,$dir); var_dump($result); $fp = fopen("/root/common.h","r"); var_dump($fp); $r = socket_sendmsg($socket,[ "iov" => [" "], "control" => [ [ "level" => SOL_SOCKET, "type" => SCM_RIGHTS, "data" => [$fp] ] ] ] ,0);?> php 数据报流 域套接字 跨进程传递描述符代码案例 $s = socket_create(AF_UNIX,SOCK_DGRAM,0) or die("err"); unlink($dir); $br = socket_bind($s,$dir) or die("err"); $dir = "/root/fpm"; while(1) { $data = ["name" => [],"buffer_size" => 2000,"controllen" => socket_cmsg_space(SOL_SOCKET,3)]; $result = socket_recvmsg($s,0); if($result) { var_dump($data); } } 客户端: ini_set("display_errors",0); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |