Gli ultimi tutorial di sviluppo web
 

PHP unpack() Function

<PHP Varie Riferimento

Esempio

Scompattare i dati da una stringa binaria:

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

Definizione e l'utilizzo

unpack() funzione decomprime i dati da una stringa binaria.


Sintassi

unpack(format,data)

Parametro Descrizione
format Necessario. Specifica il formato da utilizzare quando imballaggio dati.

Valori possibili:

  • a - stringa di NUL imbottite
  • A - spazio stringa imbottite
  • h - stringa esadecimale, nibble basso prima
  • H - stringa esadecimale, alta nibble prima
  • c - signed char
  • C - unsigned char
  • s - firmato a breve (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 - intero con segno (machine dependent size and byte order)
  • I - intero senza segno (machine dependent size and byte order)
  • l - firmato a lungo (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 - galleggiante (machine dependent size and representation)
  • d - doppia (machine dependent size and representation)
  • x - NUL byte
  • X - Eseguire il backup di un byte
  • Z - stringa NUL imbottite
  • @ - NUL-fill a posizione assoluta
data Necessario. Specifica i dati binari per essere decompresso

Dettagli tecnici

Valore di ritorno: Restituisce una matrice in caso di successo, o FALSE in caso di fallimento.
Versione PHP: 4+
changelog: Dal PHP 5.5.0, sono state apportate modifiche seguenti per la compatibilità Perl:

La "a" codice di ora mantiene trailing byte NULL.
La "A" codice ormai spoglia tutti gli spazi finali ASCII.
La "Z" del codice è stato aggiunto per le stringhe NULL imbottite, e rimuove trailing byte NULL.

Altri esempi

esempio 1

Dati decompressione:

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

esempio 2

Dati decompressione:

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

<PHP Varie Riferimento