php pack函数
发布网友
发布时间:2022-05-09 19:02
我来回答
共1个回答
热心网友
时间:2023-10-14 01:07
$num = array( 'value'=>'54','type'=>'i1');
pack(strtolower($data['type']), trim($data['value']));
最好使用英文名称,pack会根据数据类型对你的数据进行打包,数据类型是有有格式的,给你个参考网站
http://www.w3school.com.cn/php/func_misc_pack.asp
如果你要是多个数据传一起发送的话,可以定义一个大点的数组,使用foreach()函数对数组进行遍历,在组成一个长的字符串。如果还有不明白的可以继续问我追问后台收银系统就只接收 $data1 = "07# 01;23;'10'*54;5;'' 或者 $data2="03#01" 这种,应该是字符串吧? 可以直接 pack('h*',$data1,$data2); 可以这样么
追答如果是字符串的话应该是string类型,对应的是a或者A。可以这样pack('a*',$data1).pack('a*',$data2),当然我只是提个建议,你那种写在一个pack函数里面的我没用过,所以你可以自己验证一下,但是分着写是肯定没问题。如果你想优化的话,可以使用strlen()函数,看一下你的data到底有多长,就没必要使用a*或者是h*了。