+
80
-

如何自定义一套自己的二进制协议?

如何自定义一套自己的二进制协议?


网友回复

+
0
-

可以使用php中的pack与unpack,将数据打包成二进制,并将二进制解析成数组,示例代码如下:

<?php
$binarystring = pack ("NA3CC", 3, "aBc", 0x0D, 0x0A);

$a = unpack ("N1length/A3signature/C1cr/C1lf", $binarystring);
print_r ($a);

+
0
-

再看一个例子

<?php

$username = 'test@bfw.wiki';
$password = 'pw123123';
$packdata   = pack('SCSa32a32',0x0040,0x00,0x0006, $username, $password );
$unpackdata = unpack('Shead/Cflag/Sflag2/a32word/a32passd/',$packdata);
 
print_r($unpackdata);

我知道答案,我要回答