tutoriais mais recente desenvolvimento web
 

PHP unpack() Function

<PHP Diversos Referência

Exemplo

Descompactar dados de uma string binária:

<?php
$data = "PHP";
print_r(unpack("C*",$data));
?>
Exemplo executar »

Definição e Uso

O unpack() função descompacta dados de uma string binária.


Sintaxe

unpack(format,data)

Parâmetro Descrição
format Requeridos. Especifica o formato a utilizar quando a embalagem de dados.

Valores possíveis:

  • a - corda NUL acolchoado
  • A - corda espaço acolchoado
  • h - corda Hex, baixa mordidela primeiro
  • H - HEX, alta mordidela primeiro
  • c - caractere assinado
  • C - unsigned char
  • s - assinado curta (always 16 bit, machine byte order)
  • S - unsigned short (always 16 bit, machine byte order)
  • n - unsigned short (always 16 bit, big endian byte order)
  • v - unsigned short (always 16 bit, little endian byte order)
  • i - inteiro assinado (machine dependent size and byte order)
  • I - inteiro sem sinal (machine dependent size and byte order)
  • l - assinado longo (always 32 bit, machine byte order)
  • G - sem sinal longa (always 32 bit, machine byte order)
  • N - unsigned longo (always 32 bit, big endian byte order)
  • V - não assinado longo (always 32 bit, little endian byte order)
  • f - flutuador (machine dependent size and representation)
  • d - dupla (machine dependent size and representation)
  • x - NUL byte
  • X - Faça backup de um byte
  • Z - corda NUL acolchoado
  • @ - NUL-preencher a posição absoluta
data Requeridos. Especifica os dados binários para ser desembalado

Detalhes técnicos

Valor de retorno: Retorna um array em sucesso, ou FALSE em caso de falha.
PHP Versão: 4+
changelog: A partir do PHP 5.5.0, seguintes alterações foram feitas para compatibilidade Perl:

O "a" código agora retém à direita bytes NULL.
O "A" código agora retira todos os espaços ASCII de fuga.
O "Z" código foi adicionado para cordas acolchoado-NULL, e remove à direita bytes NULL.

mais Exemplos

Exemplo 1

dados descompactar:

<?php
$data = "PHP";
print_r(unpack("C*myint",$data));
?>
Exemplo executar »

exemplo 2

dados descompactar:

<?php
$bin = pack("c2n2",0x1234,0x5678,65,66);
print_r(unpack("c2chars/n2int",$bin));
?>
Exemplo executar »

<PHP Diversos Referência