在PHP中将数组作为参数传递非用户函数

时间:2014-09-19 07:04:32

标签: php arguments pack

我有以下代码:

$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]);

但是数组的长度和内容都在程序的过程中。

3 个答案:

答案 0 :(得分:3)

像这样:

call_user_func_array('pack', array_merge(['C*'], $unpack_data))

答案 1 :(得分:2)

New php 5.6 syntax允许此

pack('C*', ...$unpack_data);

答案 2 :(得分:0)

$res = pack('C*',$arr)

//hope this might help you