2017-06-17 56 views
0

我有一个服务(node.js),其中我通过mqtt接收一个字节数组。喜欢的东西:发送字节数组通过php中的mqtt

170617095900 .... 这里的每一个字节的东西:+年,月,日,时,分,秒....

我从一个Arduino得到这个和它工作正常。我想开发一些类似于php到mqtt的东西,以相同的方式发送另一条消息。

我在PHP的所有数据在一个阵列,其中每一个位置是一个值[17,6,17,9,59,0,...]

我试图通过发送此阵列phpMQTT库:

if ($mqtt->connect()) { 
    $mqtt->publish($topic, $message, 0, 1); 
    $mqtt->close(); 
} 

但我不能。我只能发送字符串。所以,我试图来连接我的阵列的每一个位置:

$message .= $mes[i] 
... 

但我得到的ASCII而不是小数的值。我的意思是,我得到1的十六进制,另一个7的等等。

有没有一种方法可以通过mqtt在PHP中发送字节数组或我应该将这部分移动到节点?

回答

0

使用PHP ord函数将字符串转换为字节数组。

http://ca.php.net/ord

$fix = []; 
for($i = 0; $i < strlen($message); $i++) { 
    $fix[$i] = ord($message[$i]); 
} 

$修复现在将包含字节数组。