Função pack() do PHP

Definição e uso

A função pack() empacota dados em uma string binária.

Sintaxe

pack(format,args+)
Parâmetros Descrição
format Obrigatório. Define o formato utilizado para empacotar os dados.
args+ Opcional. Define um ou mais parâmetros empacotados.

format Valores possíveis dos parâmetros:

  • a - Stringa preenchida com NUL
  • A - Stringa preenchida com espaços
  • h - Stringa esadecimale, nibble baixo primeiro
  • H - Stringa esadecimale, nibble alto primeiro
  • c - signed char
  • C - unsigned char
  • s - signed short (sempre 16 bits, ordem de bytes da máquina)
  • S - unsigned short (sempre 16 bits, ordem de bytes da máquina)
  • n - unsigned short (sempre 16 bits, ordem de bytes big endian)
  • v - unsigned short (sempre 16 bits, ordem de bytes little endian)
  • i - signed integer (tamanho e ordem de bytes dependentes da máquina)
  • I - unsigned integer (tamanho e ordem de bytes dependentes da máquina)
  • l - signed long (sempre 32 bits, ordem de bytes da máquina)
  • L - unsigned long (sempre 32 bits, ordem de bytes da máquina)
  • N - unsigned long (sempre 32 bits, ordem de bytes big endian)
  • V - unsigned long (sempre 32 bits, ordem de bytes little endian)
  • f - float (tamanho e representação dependentes da máquina)
  • d - double (tamanho e representação dependentes da máquina)
  • x - Byte NUL
  • X - Voltar um byte
  • @ - Preencher com NUL até a posição absoluta

Exemplo

Exemplo 1

<?php
echo pack("C3",80,72,80);
?>

Saída:

PHP

Exemplo 2

<?php
echo pack("C*",80,72,80);
?>

Saída:

PHP