php - 使用 tcp 套接字将数据从 php 发送到 c++

标签 php c++ sockets

我正在尝试将数据从我的简单 php 脚本发送到 c++ 程序,thad 使用套接字但我无法正确重现此数据。 我的简单 PHP 脚本:

$motorPort = fsockopen("192.168.2.1", 4444, $errno, $errstr, 30);
fwrite($motorPort, '0100');

sleep(5);

fclose($motorPort);

我的 C++ 代码:

...
unsigned char buffer[BUFFER_SIZE];
...
ssize_t count = recv(client_handle, &buffer, BUFFER_SIZE, 0);
...
unsigned int cmd;
unsigned long commands_count = count/4;
for(cmd = 0; cmd != commands_count; ++cmd)
{
    printf("Buffer = %d\n", buffer[0]);
    printf("Buffer = %d\n", buffer[1]);
    printf("Buffer = %d\n", buffer[2]);
    printf("Buffer = %d\n", buffer[3]);
}
...

但是我得到: 48岁 49 48岁 48岁 反而: 0 1个 0 0

最佳答案

您正在发送 ascii 并期望二进制。 http://www.ascii.cl/ ascii 48 0 ascii 49 1

我自己没有做过,所以不清楚细节。但是您可能需要使用 pack()

关于php - 使用 tcp 套接字将数据从 php 发送到 c++,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/24767283/

相关文章:

c++ - 融合 vector 投影

c++ - 查找编译时构造类的内存位置

java - Python客户端写入Java的writeUTF方法

c++ - 服务器套接字编译错误

java - Android 蓝牙连接 - 服务发现失败

php - 将冗余的 MySQL 结果解析为结构化数组

php - fatal error : Uncaught UnexpectedValueException: The server returned an unexpected value. 应为 "HTTP/1.1 101",实际为 ""

c++ - const_cast const STL 容器,它是未定义的行为吗?

PHP 标准作者标题注释

javascript - jquery 按钮类更改