PHP の Pack() 関数は、データをバイナリ形式に変換するために使用される関数です。この関数を使用して、さまざまなアプリケーション シナリオに適応するために、指定された形式でデータをパッケージ化します。この記事では、pack() 関数の基本的な使い方と一般的な形式の手順を紹介します。
pack() 関数の構文は次のとおりです:
string pack ( string $format , mixed $args1 [, mixed $... ] )
最初のパラメータは、データ パッケージ化の形式説明文字列です。形式文字列には 1 つ以上の形式コードを含めることができます。各形式 ? は対応します。 1 つのパラメータに入力すると、最終結果は特定の順序でパックされたバイナリ文字列になります。
一般的に使用される形式コードの一部を次に示します:
形式コード | 意味 |
---|---|
a | NULL バイトによるパディング (最後の null を含む) |
#A | スペースによるパディング (最後のスペースを含む) |
h | 16 進数の小文字 |
H | 16 進数の大文字 |
i | 符号付き整数、サイズは 4 バイト |
I | 符号なし整数、サイズは 4 バイト |
l | 符号付き整数、サイズは 4 バイト (i と同じ) |
L | 符号なし整数、サイズは 4 バイト (I と同じ) |
n | I と同じですが、ネットワーク バイト オーダーを強制します |
N | V と同じですが、ネットワーク バイト オーダーを強制します |
V | 符号なし整数、サイズは 4 バイトです |
s | 符号付き short 整数、サイズは 2 バイト |
S | サイズ 2 バイトの符号なし short 整数 |
署名付き文字、サイズは 1 バイト | |
符号なし文字、サイズは 1 バイト | |
単精度浮動小数点数、サイズは 4 バイト | |
倍精度浮動小数点数、サイズは 4 バイト8 バイト |
$format = "A5a5a5a5a5"; // 5个空格后面跟5个以null填充的字符 $args = array("Hello", "World", "PHP", "Is", "Fun"); echo bin2hex(pack($format, ...$args)); // 输出 48656c6c6f00576f726c640050485049732046756eこの例では、形式コード
A および
a# を使用します。 ## 文字列をパックする ...$args
この構文は PHP 5.6 の変数展開構文で、配列を複数のパラメーターに分割し、それらを順番に関数に渡します。 同様に、pack() 関数もいくつかの特殊なフォーマット コードをサポートしています。以下にその概要を示します:
意味 | |
---|---|
XX | |
@ | |
以上がPHPパックメソッドの基本的な使い方について話しましょうの詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。