src/Protocol/EasyStream.php
private function pack($data): string
    {
        $flag = $this->flagChoice(gettype($data));
        if ($flag & self::DATA_OBJECT) {
            $data = serialize($data);
        } elseif ($flag & self::DATA_ARRAY) {
            $data = json_encode($data);
        }
        $size = strlen($data);
        if ($size > self::PACKET_MAX_SIZE_WITH_HEADER) {
            throw new SendException('Large size of data to send! Please break it into your code.');
        }
        $format = 'CNa*';
        if ($size <= self::SHORT_PACKET_SIZE) {
            $format = 'CCa*';
            $flag |= self::SHORT_PACKET;
        }
        return pack($format, $flag, $size - 1, $data);
    }
private function pack($data): string
    {
        $flag = $this->flagChoice(gettype($data));
        if ($flag & self::DATA_OBJECT) {
            $data = serialize($data);
        } elseif ($flag & self::DATA_ARRAY) {
            $data = json_encode($data);
        }
        $size = strlen($data);
        if ($size > self::PACKET_MAX_SIZE_WITH_HEADER) {
            throw new SendException('Large size of data to send! Please break it into your code.');
        }
        $format = 'CNa*';
        if ($size <= self::SHORT_PACKET_SIZE) {
            $format = 'CCa*';
            $flag |= self::SHORT_PACKET;
        }
        return pack($format, $flag, $size - 1, $data);
    }
private function pack ( $ data ) : string { $ flag = $ this -> flagChoice ( gettype ( $ data ) ) ; if ( $ flag & self :: DATA_OBJECT ) { $ data = serialize ( $ data ) ; } elseif ( $ flag & self :: DATA_ARRAY ) { $ data = json_encode ( $ data ) ; } $ size = strlen ( $ data ) ; if ( $ size > self :: PACKET_MAX_SIZE_WITH_HEADER ) { throw new SendException ( 'Large size of data to send! Please break it into your code.' ) ; } $ format = 'CNa*' ; if ( $ size <= self :: SHORT_PACKET_SIZE ) { $ format = 'CCa*' ; $ flag |= self :: SHORT_PACKET ; } return pack ( $ format , $ flag , $ size - 1 , $ data ) ; }
Пакует данные в пакеты, и возвращает массив пакетов,
которые можно отправлять в любом порядке.

@param $data

@return string
@throws SendException
Пакует данные в пакеты и возвращает массив пакетов которые можно отправлять в любом порядке .