定義と使用法
pack()
関数は、データをバイナリ文字列にパッケージ化します。
例
例1
データをバイナリ文字列にパッケージ化します。
<?php
エコーパック( " C3 " 、 80、72、80 ) ;
?>
自分で試してみてください
例説明:
pack( "c*"、80、72、80)3つの符号なし文字(80、72、80)をバイナリ文字列に詰めます。 C*は、1つ以上の署名されていない文字を梱包することを意味します。この例では、出力はこれら3つの文字を含むバイナリ文字列になります。文字80、72、および80は、ASCIIテーブルの文字 'P'、「H」、および「P」にそれぞれ対応するため、出力は文字列「PHP」になることに注意してください。
例2
<?php
Echo Pack ( " C * " 、 80、72、80 ) ;
?>
自分で試してみてください
文法
pack ( format 、 args + ))
パラメーター |
説明する |
形式 |
必須。データをパッケージ化するときに使用される形式を指定します。 |
args+
|
オプション。パッケージ化される1つ以上のパラメーターを指定します。 |
フォーマットパラメーターの可能な値:
- a -nul塗りつぶされた文字列
- A-スペースが充填された文字列
- H-ヘキサデシマル文字列、前面が低いビット
- h-ヘキサデシメール文字列、高数桁が前にあります
- C-署名された文字
- C-署名されていない文字
- S-署名された短い整数(常に16ビット、マシンエンディアン)
- S-署名されていない短い整数(常に16ビット、マシンバイト順序)
- n-署名されていない短い整数(常に16ビット、ビッグエンディアンエンディアン)
- V-署名されていない短い整数(常に16ビット、リトルエンディアン)
- 私 - 署名された整数(機械関連のサイズとエンディアン性)
- I -unsigned Integers(機械関連のサイズとエンディアン性)
- L-署名された長い整数(常に32ビット、マシンエンディアン)
- L-署名されていない長い整数(常に32ビット、マシンエンディアン)
- n-署名されていない長い整数(常に32ビット、ビッグエンディアン)
- V-署名されていない長い整数(常に32ビット、リトルエンディアンバイト順序)
- Q-署名された長い整数(常に64ビット、マシンエンディアン)
- Q-署名されていない長い整数(常に64ビット、マシンエンディアン)
- J-署名されていない長い整数(常に64ビット、ビッグエンディアンエンディアン)
- P-署名されていない長い整数(常に64ビット、リトルエンディアン)
- f-フローティングポイント番号(機械関連のサイズと表現)
- G-浮動小数点数(機械関連のサイズ、リトルエンディアンエンディアンエンディアン)
- G-浮動小数点数(機械関連のサイズ、ビッグエンディアンエンディアン)
- D-二重精度の浮動小数点数(機械関連のサイズと表現)
- E-二重精度の浮動小数点数(機械関連のサイズ、小エンディアンエンディアン)
- E-二重精度の浮動小数点数(機械関連のサイズ、ビッグエンディアンエンディアン)
- x -nulバイト
- X- 1つのバイトを巻き戻します
- z -nul塗りつぶされた文字列
- @ - 絶対位置へのnul塗りつぶし