The pack() function in PHP is a function used to convert data into binary format. Use this function to package data in a specified format to adapt to different application scenarios. This article will introduce the basic usage and common format instructions of the pack() function.
The syntax of the pack() function is:
string pack ( string $format , mixed $args1 [, mixed $... ] )
The first parameter is the format description string for data packaging. The format string can contain one or more format codes. Each format ? corresponds to one parameter, and the final result is a binary string packed in a specific order.
The following are some commonly used format codes:
Format code | Meaning |
---|---|
a | Padding with null bytes, including the last null |
A | Padding with spaces, including the last space |
h | Lowercase letters of hexadecimal |
H | Uppercase letters of hexadecimal |
i | Signed integer, size is 4 bytes |
I | No Signed integer, size is 4 bytes |
l | Signed integer, size is 4 bytes (same as i) |
L | Unsigned integer, size is 4 bytes (same as I) |
n | Same as I, but enforces network byte order |
N | Same as V, but forces network byte order |
V | Unsigned integer, size is 4 bytes |
s | Signed short integer, size is 2 bytes |
S | Unsigned short integer of size 2 bytes |
c | Signed characters, the size is 1 byte |
C | Unsigned characters, the size is 1 byte |
f | Single precision floating point number, size is 4 bytes |
d | Double precision floating point number, size is 8 bytes |
Here is a simple example:
$format = "A5a5a5a5a5"; // 5个空格后面跟5个以null填充的字符 $args = array("Hello", "World", "PHP", "Is", "Fun"); echo bin2hex(pack($format, ...$args)); // 输出 48656c6c6f00576f726c640050485049732046756e
In this example, we use the format codes A
and a
to pack the string, ...$args
The syntax is the variable expansion syntax of PHP 5.6, which is to split the array into multiple parameters and pass them to the function in turn.
Similarly, the pack() function also supports some special format codes. The following is an introduction:
Format code | Meaning |
---|---|
NUL bytes | |
Remove previous character | |
Padding to a specific length |
The above is the detailed content of Let's talk about the basic usage of php pack method. For more information, please follow other related articles on the PHP Chinese website!