duangouyan3328 2016-09-12 07:05
浏览 53
已采纳

如何将数组包发送到socket

I want to write and read a message on socket in PHP
My write message is = 82,10,1,6,150,249
My read message is = 82,10,1,6,148,297
I write this code but do not wrok.
Tips: my message is array

 $sock = socket_create(AF_INET, SOCK_DGRAM, SOL_UDP);

$message = array('1'=> '82', '2'=>'10', '3'=>'1' ,'4'=>'6' ,'5'=>'150' ,'6'=>'249');
$len = strlen($message);

socket_sendto($sock, $message, $len, 0, '192.168.43.232', 5050);
socket_close($sock)
  • 写回答

1条回答 默认 最新

  • dqy012345 2016-09-24 09:21
    关注
        $host = "192.168.1.1";
        $port = 8080;
    
    
        //Create Packet
        $TurnOn = array(82, 10, 1, 6, 150, 249);
        foreach ($TurnOn as $chunk) {
            $message .= chr($chunk);
        }
    
        //Create socket
        $socket = socket_create(AF_INET, SOCK_STREAM, 0);
        if (!$socket) {
            $errorcode = socket_last_error();
            $errormsg = socket_strerror($errorcode);
    
            die("Couldn't create socket: [$errorcode] $errormsg 
    ");
        }
    
    
        //Connect socket to remote server
        if (!socket_connect($socket, $host, $port)) {
            $errorcode = socket_last_error();
            $errormsg = socket_strerror($errorcode);
    
            die("Could not connect: [$errorcode] $errormsg 
    ");
        }
    
    
        //Send the message to the server
        if (!socket_send($socket, $message, strlen($message), 0)) {
            $errorcode = socket_last_error();
            $errormsg = socket_strerror($errorcode);
    
            die("Could not send data: [$errorcode] $errormsg 
    ");
        }
    
        socket_close($socket);
    
    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

悬赏问题

  • ¥15 docker环境配置
  • ¥20 绿盟安全扫描--检测到目标站点存在javascript框架库漏洞
  • ¥30 Android STD快速启动
  • ¥15 如何使用simulink建立一个永磁同步直线电机模型?
  • ¥30 天体光谱图的的绘制并得到星表
  • ¥15 PointNet++的onnx模型只能使用一次
  • ¥20 西南科技大学数字信号处理
  • ¥15 有两个非常“自以为是”烦人的问题急期待大家解决!
  • ¥30 STM32 INMP441无法读取数据
  • ¥15 R语言绘制密度图,一个密度曲线内fill不同颜色如何实现