PHP pack()関数

定義と用法

pack()関数はデータをバイナリストリングに格納します。

文法

pack(format,args+)
パラメータ 説明
format 必須。包装データ時に使用されるフォーマットを指定します。
args+ オプション。包装された一つのまたは複数のパラメータを指定します。

format パラメータの可能な値:

  • a - ノルでパディングされたストリング
  • A - スペースでパディングされたストリング
  • h - ヒックスストリング、ローニブレが最初に来る
  • H - ヒックスストリング、ハイニブレが最初に来る
  • c - シグネッドチャート
  • C - 無符号チャート
  • s - 16ビットのシグネッドショート(常にマシンバイトオーダー)
  • S - 16ビットの無符号ショート(常にマシンバイトオーダー)
  • n - 16ビットの無符号ショート(常にビッグエンディアンバイトオーダー)
  • v - 16ビットの無符号ショート(常にリトルエンディアンバイトオーダー)
  • i - サインド・インテジャー(機械依存のサイズとバイトオーダー)
  • I - アンサインド・インテジャー(機械依存のサイズとバイトオーダー)
  • l - サインド・ロング(常に32ビット、マシンベイトオーダー)
  • L - アンサインド・ロング(常に32ビット、マシンベイトオーダー)
  • N - アンサインド・ロング(常に32ビット、ビッグエンディアンバイトオーダー)
  • V - アンサインド・ロング(常に32ビット、リトルエンディアンバイトオーダー)
  • f - フロート(機械依存のサイズと表現)
  • d - ドブル(機械依存のサイズと表現)
  • x - NUL バイト
  • X - 1バイト前
  • @ - 絶対位置への NUL フィル

例 1

<?php
echo pack("C3",80,72,80);
?>

出力:

PHP

例 2

<?php
echo pack("C*",80,72,80);
?>

出力:

PHP