Как в PHP сделать pack() из массива

Есть в PHP хорошая функция для запаковки каких-либо данных в бинарный формат. И с помощью неё можно паковать любые данные, в том числе массивы, с некоторыми ограничениями. Рассмотрим простой пример:

php > $a = [1,2,3,4,5,6];
php > $packed = pack('c*', ...$a);
php > echo strlen($packed);
6

С помощью шаблона ‘c*’ можно упаковать массив однобайтовых интов в бинарный формат с нолевыми потерями на форматирование! Для двубайтовых интов нужно использовать шаблон ‘n*’ и т.п. Подробнее о шаблонах смотрите в официальной документации: https://secure.php.net/manual/ru/function.pack.php

Смотрите также: https://stackoverflow.com/questions/29919260/php-passing-an-array-to-pack-function