バイナリ文字列からデータを解凍します。
<?php$data = "PHP";print_r(unpack("C*",$data));?>unpack() 関数は、バイナリ文字列からデータを解凍します。
unpack(フォーマット,データ)
| パラメータ | 説明する |
|---|---|
| 形式 | 必須。データを解凍するときに使用する形式を指定します。 可能な値: a - NUL 埋め込み文字列 A - スペースで満たされた文字列 h - 16 進文字列、下位ビットが最初 H - 16 進数の文字列、上位ビットが最初 c - 署名付き文字 C - 符号なし文字 s - 符号付きショート (常に 16 ビット、マシンバイトオーダー) S - 符号なし short (常に 16 ビット、マシンバイトオーダー) n - unsigned short (常に 16 ビット、ビッグエンディアンのバイトオーダー) v - unsigned short (常に 16 ビット、リトルエンディアンのバイトオーダー) i - 符号付き整数 (マシンのサイズとバイト順序によって異なります) I - 符号なし整数 (マシンのサイズとバイト順序によって異なります) l - 符号付きロング (常に 32 ビット、マシンバイトオーダー) L - unsigned long (常に 32 ビット、マシンバイトオーダー) N - unsigned long (常に 32 ビット、ビッグ エンディアン バイト オーダー) V - unsigned long (常に 32 ビット、リトルエンディアンのバイトオーダー) f - float (マシンのサイズと表現によって異なります) d - double (マシンのサイズと表現によって異なります) x - NULバイト X - 1バイトをバックアップします Z - NUL で埋め込まれた文字列 @ - NUL が絶対位置を埋めます |
| データ | 必須。解凍するバイナリデータを指定します。 |
| 戻り値: | 成功した場合は配列を返し、失敗した場合は FALSE を返します。 |
|---|---|
| PHPのバージョン: | 4+ |
| 更新ログ: | PHP 5.5.0 では、Perl との互換性のために次の変更が加えられています。「a」コードは末尾の NULL バイトを保持します。 「A」コードは、末尾の ASCII 空白をすべて削除します。 NUL 埋め込み文字列に「Z」コードを追加し、末尾の NULL バイトを削除しました。 |
データを解凍します。
<?php$data = "PHP";print_r(unpack("C*myint",$data));?>データを解凍します。
<?php$bin = Pack("c2n2",0x1234,0x5678,65,66);print_r(unpack("c2chars/n2int",$bin));?>