Распаковать битами в PHP
Я хочу распаковать двоичную строку в массив с помощью странной последовательности 8-8-8-7 бит.
Я мог бы легко сделать что-то подобное для нормальной последовательности 8-8-8-8:
$b=unpack('C*',$data);
for ($i=0,$count=sizeof($b); $i < $count; $i+=4) {
$out[]=array($b[$i+1],$b[$i+2],$b[$i+3],$b[$i+4]);
}
Это дало бы мне двумерный массив байтов, сгруппированный по 4.
Но поскольку четвертый, состоящий из 7 битов, я просто не могу придумать ничего подходящего.
У тебя есть идеи?