Definition und Verwendung
unpack()
packt Daten aus einer binären Zeichenfolge aus.
Beispiel
Beispiel 1
Daten aus einer binären Zeichenfolge auspacken:
<? Php
$ data = "php" ;
print_r ( pack ( "c*" , $ data ) ) ;
?>
Probieren Sie es selbst aus
Beispiel 2
Daten auspacken:
<? Php
$ data = "php" ;
print_r ( pack ( "c*myint" , $ data ) ) ;
?>
Probieren Sie es selbst aus
Beispiel 3
Daten auspacken:
<? Php
$ bin = pack ( "C2N2" , 0x1234 , 0x5678 , 65 , 66 ) ;
print_r ( pack ( "c2chars/n2int" , $ bin ) ) ;
?>
Probieren Sie es selbst aus
Grammatik
Auspacken ( Format , Daten , Offset )
Parameter |
beschreiben |
Format
|
Erforderlich. Gibt das beim Auspacken von Daten verwendete Format an. |
Daten
|
Optional. Gibt die zu entpackten Binärdaten an. |
Offset
|
Optional. Geben Sie an, wo Sie mit dem Auspacken beginnen. Der Standard ist 0. |
Mögliche Werte für den Formatparameter :
- A - NUL -PADDED -Saite
- A - Space -Padd -Zeichenfolge
- H - Sechsketten, niedrige Knabbereien vorne
- H - Hex -Saite, hohe Knabberei vorne
- C - signierte Zeichen
- C - nicht signierte Zeichen
- S - Signierte kurze Ganzzahl (immer 16 Bit, Maschinenbyte -Bestellung)
- S - nicht signierte kurze Ganzzahl (immer 16 Bit, Maschinenbyte -Bestellung)
- n-vorzeichenlose kurze Ganzzahl (immer 16-Bit, Big-Endian Byte Order)
- V-nicht signierte kurze Ganzzahl (immer 16-Bit, Little-Endian Byte Order)
- I - Signierte Ganzzahlen (maschinell bezogene Größe und Byte -Reihenfolge)
- I - nicht signierte Ganzzahlen (maschinell bezogene Größe und Byte -Reihenfolge)
- L - Signierte lange Ganzzahl (immer 32 Bit, Maschinenbyte -Bestellung)
- L - vorzeichenlose lange Ganzzahl (immer 32 Bit, Maschinen -Byte -Bestellung)
- N - nicht signierte lange Ganzzahl (immer 32 Bit, Big Endian Byte Order)
- V - nicht signierte lange Ganzzahl (immer 32 Bit, Little Endian Byte Order)
- Q - Long Ganzzahl signiert (immer 64 Bit, Maschinen -Byte -Bestellung)
- Q - Long Ganzzahl nicht signiert (immer 64 Bit, Maschinen -Byte -Bestellung)
- J - nicht signierte lange Ganzzahl (immer 64 Bit, Big Endian Byte Order)
- P - nicht signierte lange Ganzzahl (immer 64 Bit, Little Endian Byte Order)
- f - schwimmende Punktzahl (maschinelle Größe und Darstellung)
- G-schwimmende Punktzahl (maschinell bezogene Größe, Byte-Byte-Reihenfolge mit Little-End-Byte)
- G-schwimmende Punktzahl (maschinell bezogene Größe, Big-Endian-Byte-Bestellung)
- D - Doppelpräzisionsschwimmpunkte (maschinenbedingte Größe und Darstellung)
- E-doppelte Präzision schwimmende Punktzahl (maschinellbezogene Größe, Little-Endian-Byte-Reihenfolge)
- E-doppelte Präzision schwimmende Punktzahl (maschinell bezogene Größe, Big-Endian-Byte-Reihenfolge)
- x - nul Bytes
- X - einen Byte zurückspulen
- Z - Nul -Padd -Zeichenfolge
- @ - Nul -Fill in absolute Position