Home >Backend Development >PHP Problem >How to use php unpack function
php The unpack function is used to unpack data from binary strings. The syntax is unpack(format,data). The parameter format is required and refers to the format used when unpacking data.
#How to use the php unpack function?
Definition and Usage
The unpack() function unpacks data from a binary string.
Syntax
unpack(format,data)
Parameters
format Required. Specifies the format used when unpacking data.
Possible values:
● a - NUL padded string
● A - SPACE padded string
● h - Hexadecimal string, low byte first
● H - Hexadecimal string, high byte first
● c - signed char
● C - unsigned char
● s - signed short (always 16 bits, machine byte order)
● S - unsigned short (always 16 bits, machine byte order)
● n - unsigned short (always 16 bits, big endian byte order)
● v - unsigned short (always 16 bits, little endian byte order)
● i - signed integer (depends on machine size and byte order)
● I - unsigned integer (depends on machine size and byte order)
● l - signed long ( Always 32 bits, machine byte order)
● L - unsigned long (always 32 bits, machine byte order)
● N - unsigned long (always 32 bits, big endian byte order)
● V - unsigned long (always 32 bits, little endian byte order)
● f - float (depends on machine size and representation)
● d - double (depends on machine size and representation)
● x - NUL byte
● X - backup one byte
● Z - NUL padded string
● @ - NUL padded absolute position
● data Required. Specifies the binary data to be unpacked.
Return value:
Returns an array if successful, returns FALSE if failed.
PHP Version: 4
Change Log:
Since PHP 5.5.0, the following changes have been made for Perl compatibility:
"a" code Trailing NULL bytes are reserved.
The "A" code removes all trailing ASCII whitespace.
Added "Z" code for NUL padded strings and removes trailing NULL bytes.
Example 1
Unpack the data:
<?php $data = "PHP"; print_r(unpack("C*myint",$data)); ?>
Example 2
<?php $bin = pack("c2n2",0x1234,0x5678,65,66); print_r(unpack("c2chars/n2int",$bin)); ?>
Example
Unpacking data from binary string:<?php $data = "PHP"; print_r(unpack("C*",$data)); ?>Output:
Array ( [1] => 80 [2] => 72 [3] => 80 )
The above is the detailed content of How to use php unpack function. For more information, please follow other related articles on the PHP Chinese website!