<PHP Misc Referenz
Beispiel
Packen von Daten von einem Binär-String:
<?php
$data = "PHP";
print_r(unpack("C*",$data));
?>
Führen Sie
zB »
Definition und Verwendung
Das unpack() Funktion dekomprimiert Daten von einer binären Zeichenkette.
Syntax
Parameter | Beschreibung |
---|
format | Erforderlich. Gibt das Format zu verwenden, wenn Daten zu packen. Mögliche Werte: - a - NUL-aufgefüllter String
- A - SPACE-aufgefüllter String
- h - Hex-String, Low-Nibble zuerst
- H - Hex-String, hohe Tetrade zuerst
- c - signed char
- C - unsigned char
- s - unterzeichnet kurz (always 16 bit, machine byte order) - (always 16 bit, machine byte order)
- S - unsigned short (always 16 bit, machine byte order) - (always 16 bit, machine byte order)
- n - unsigned short (always 16 bit, big endian byte order) - (always 16 bit, big endian byte order) - (always 16 bit, big endian byte order) - (always 16 bit, big endian byte order)
- v - unsigned short (always 16 bit, little endian byte order) - (always 16 bit, little endian byte order) - (always 16 bit, little endian byte order) - (always 16 bit, little endian byte order)
- i - Ganzzahl mit Vorzeichen (machine dependent size and byte order)
- I - unsigned integer (machine dependent size and byte order)
- l - unterzeichnet lange (always 32 bit, machine byte order) - (always 32 bit, machine byte order)
- L - unsigned long (always 32 bit, machine byte order) - (always 32 bit, machine byte order)
- N - unsigned long (always 32 bit, big endian byte order) - (always 32 bit, big endian byte order) - (always 32 bit, big endian byte order) - (always 32 bit, big endian byte order)
- V - unsigned long (always 32 bit, little endian byte order) - (always 32 bit, little endian byte order) - (always 32 bit, little endian byte order) - (always 32 bit, little endian byte order)
- f - Schwimmer (machine dependent size and representation)
- d - double (machine dependent size and representation)
- x - NUL Byte
- X - Sichern ein Byte
- Z - NUL-aufgefüllter String
- @ - NUL-fill auf absolute Position
|
data | Erforderlich. Gibt die binären Daten entpackt werden |
Technische Details
Rückgabewert: | Gibt einen Array auf Erfolg oder FALSE bei einem Fehler. |
---|
PHP Version: | 4+ |
---|
Änderungsprotokoll: | Ab PHP 5.5.0 wurden folgende Änderungen für Perl-Kompatibilität hergestellt:
Der "a" Code behält nun NULL - Bytes Hinter. Der "A" Code jetzt Streifen all Hinter ASCII Leerzeichen. Der "Z" Code wurde für NULL-gepolsterten Strings hinzugefügt und NULL - Bytes entfernt den Hinter. |
---|
Mehr Beispiele
Beispiel 1
Auspacken Daten:
<?php
$data = "PHP";
print_r(unpack("C*myint",$data));
?>
Führen Sie
zB » Beispiel 2
Auspacken Daten:
<?php
$bin = pack("c2n2",0x1234,0x5678,65,66);
print_r(unpack("c2chars/n2int",$bin));
?>
Führen Sie
zB »
<PHP Misc Referenz