Ultimele tutoriale de dezvoltare web
 

PHP unpack() Function

<PHP Diverse Reference

Exemplu

Despachetează datele dintr-un șir binar:

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

Definiție și utilizare

unpack() Funcția despachetează date dintr - un șir binar.


Sintaxă

unpack(format,data)

Parametru Descriere
format Necesar. Specifică formatul de utilizat atunci când datele de ambalare.

Valori posibile:

  • a - string NUL-capitonată
  • A - string SPACE-capitonată
  • h - string Hex, ciuguli scăzut mai întâi
  • H - string Hex, ciuguli high primul
  • c - char semnat
  • C - unsigned char
  • s - au semnat scurt (always 16 bit, machine byte order) de (always 16 bit, machine byte order)
  • S - nesemnate scurt (always 16 bit, machine byte order) de (always 16 bit, machine byte order)
  • n - nesemnate scurt (always 16 bit, big endian byte order)
  • v - nesemnate scurt (always 16 bit, little endian byte order)
  • i - au semnat întreg (machine dependent size and byte order) de (machine dependent size and byte order)
  • I - întreg fără semn (machine dependent size and byte order)
  • l - au semnat lung (always 32 bit, machine byte order) pe (always 32 bit, machine byte order) de (always 32 bit, machine byte order) de (always 32 bit, machine byte order)
  • L - nesemnate lung (always 32 bit, machine byte order) pe (always 32 bit, machine byte order) de (always 32 bit, machine byte order) de (always 32 bit, machine byte order)
  • N - nesemnate lung (always 32 bit, big endian byte order) pe (always 32 bit, big endian byte order) de (always 32 bit, big endian byte order)
  • V - nesemnate lung (always 32 bit, little endian byte order) pe (always 32 bit, little endian byte order) de (always 32 bit, little endian byte order)
  • f - float (machine dependent size and representation)
  • d - dublu (machine dependent size and representation)
  • x - NUL byte
  • X - o copie de rezervă un octet
  • Z - string NUL-capitonată
  • @ - NUL-umple în poziția absolută
data Necesar. Specifică datele binare care urmează să fie despachetat

Detalii tehnice

Întoarcere Valoare: Returnează o matrice de succes, sau FALSE în caz de eșec.
Versiune PHP: 4+
Changelog: Începând cu PHP 5.5.0, următoarele modificări au fost făcute pentru compatibilitate Perl:

"a" cod păstrează acum trailing octeți NULL.
"A" cod de benzi acum toate trailing ASCII spațiu.
"Z" , a adăugat codul pentru siruri de caractere capitonată-NULL, și elimină trailing octeți NULL.

Mai multe exemple

Exemplul 1

Date Despachetați:

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

Exemplul 2

Date Despachetați:

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

<PHP Diverse Reference