我有以下代码:
$bin = "\x04\x00\xa0\x00\x04\x00\xa0\x00";
$unpack_data = unpack("C*", $bin);
$arr = array($unpack_data[1], $unpack_data[2], $unpack_data[3]);
如何将数组$ arr传递给 pack() 函数?我唯一能做的就是:
$res = pack("C*", $unpack_data[1], $unpack_data[2], $unpack_data[3]);
但是数组的长度和内容都在程序的过程中。
答案 0 :(得分:3)
像这样:
call_user_func_array('pack', array_merge(['C*'], $unpack_data))
答案 1 :(得分:2)
pack('C*', ...$unpack_data);
答案 2 :(得分:0)
$res = pack('C*',$arr)
//hope this might help you