Phpsocket
1.
1,'c'=>3,'b'=>8);$json = json_encode($s);$f = $json."\n";socket_write($socket,$f,strlen($f));$string = "";$buf = "";while ($int = socket_recv($socket, $buf, 1204,MSG_WAITALL)){$string .= $buf;}$arr = json_decode($string,true);print_r($arr);
2.
Package mainimport ("bufio" "encoding/json" "fmt" "net" "OS ") type Server struct {ServerName stringServerIp string} type Serverslice struct {Servers [] Server} func main () {service: = ": 4444" tcpAddr, err: = net. resolveTCPAddr ("tcp4", service) checkError (err) listener, err: = net. listenTCP ("tcp", tcpAddr) checkError (err) fmt. println ("======>") fmt. println ("start listener") for {conn, err: = listener. accept () if err! = Nil {continue} fmt. println ("========>") fmt. println ("listener succeeded") go handleClient (conn)} func handleClient (conn net. conn) {defer conn. close () var jsonStr ServerslicejsonStr. servers = append (jsonStr. servers, Server {ServerName: "nc", ServerIp: "127.0.0.1"}) jsonStr. servers = append (jsonStr. servers, Server {ServerName: "sh", ServerIp: "127.0.0.2"}) jsonStr. servers = append (jsonStr. servers, Server {ServerName: "h N ", ServerIp:" 127.0.0.3 "}) B, err: = json. Marshal (jsonStr) if err! = Nil {fmt. println ("json err:", err)} a, _: = bufio. newReader (conn ). readString ('\ n') fmt. println (string (a) conn. write ([] byte (B) fmt. println (string (B)} func checkError (err error) {if err! = Nil {fmt. Fprintf (OS. Stderr, "Fatal error: % s", err. Error () OS. Exit (1 )}}