Los últimos tutoriales de desarrollo web
 

PHP unpack() Function

<PHP Misc Referencia

Ejemplo

Desempaquetar los datos de una cadena binaria:

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

Definición y Uso

El unpack() la función descomprime los datos de una cadena binaria.


Sintaxis

unpack(format,data)

Parámetro Descripción
format Necesario. Especifica el formato que se utilizará cuando el embalaje de datos.

Valores posibles:

  • a - cadena NUL
  • A - cadena ESPACIO-acolchada
  • h - cadena hexadecimal, nibble bajo primero
  • H - cadena hexadecimal, nibble alto primero
  • c - firmado Char
  • C - unsigned char
  • s - firmado corto (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 - entero con signo (machine dependent size and byte order)
  • I - entero sin signo (machine dependent size and byte order)
  • l - firmado larga (always 32 bit, machine byte order)
  • L - unsigned long (always 32 bit, machine byte order)
  • N - unsigned long (always 32 bit, big endian byte order)
  • V - unsigned long (always 32 bit, little endian byte order)
  • f - flotador (machine dependent size and representation)
  • d - doble (machine dependent size and representation)
  • x - byte NUL
  • X - Copia de seguridad de un byte
  • Z - cadena NUL
  • @ - NUL-llenar a la posición absoluta
data Necesario. Especifica los datos binarios que se descomprimirá

Detalles técnicos

Valor de retorno: Devuelve una matriz en caso de éxito, en caso de fallo.
Versión de PHP: 4+
cambios: A partir de PHP 5.5.0, se hicieron cambios siguientes para la compatibilidad Perl:

La "a" código ahora conserva posterior bytes nulos.
La "A" código ahora se quitan todos los espacios en blanco de ASCII.
El "Z" se añadió código para cadenas NULL acolchado, y elimina de salida bytes nulos.

Más ejemplos

Ejemplo 1

Desempaquetar datos:

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

Ejemplo 2

Desempaquetar datos:

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

<PHP Misc Referencia