TECH I.S.

PHP pack() 関数

❮ PHP その他のリファレンス

データをバイナリ文字列にパックします。

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

自分で試してみる »


定義と使用法

pack() 関数は、データをバイナリ文字列にパックします。


構文

pack(format,args+)

パラメータ値

パラメータ

説明

フォーマット 必要。データをパックするときに使用する形式を指定します。

可能な値:

  • a - NUL で埋められた文字列
  • A - スペースで埋められた文字列
  • h - 16 進文字列、下位ニブルが最初
  • H - 16 進文字列、上位ニブルが最初
  • c - 署名された文字
  • C - 符号なし文字
  • s - signed short (常に 16 ビット、マシン バイト オーダー)
  • S - unsigned short (常に 16 ビット、マシン バイト オーダー)
  • n - unsigned short (常に 16 ビット、ビッグ エンディアンのバイト順)
  • v - unsigned short (常に 16 ビット、リトルエンディアンのバイト順)
  • i - 符号付き整数 (マシンに依存するサイズとバイト順)
  • I - 符号なし整数 (マシンに依存するサイズとバイト順)
  • l - signed long (常に 32 ビット、マシン バイト オーダー)
  • L - unsigned long (常に 32 ビット、マシン バイト オーダー)
  • N - unsigned long (常に 32 ビット、ビッグ エンディアンのバイト順)
  • V - unsigned long (常に 32 ビット、リトルエンディアンのバイト順)
  • q - signed long long (常に 64 ビット、マシン バイト オーダー)
  • Q - unsigned long long (常に 64 ビット、マシン バイト オーダー)
  • J - unsigned long long (常に 64 ビット、ビッグ エンディアンのバイト順)
  • P - unsigned long long (常に 64 ビット、リトルエンディアンのバイト順)
  • f - float (マシンに依存するサイズと表現)
  • g - float (マシンに依存するサイズ、リトルエンディアンのバイト順)
  • G - float (マシンに依存するサイズ、ビッグ エンディアンのバイト順)
  • d - double (マシンに依存するサイズと表現)
  • e - double (マシンに依存するサイズ、リトルエンディアンのバイト順)
  • E - double (マシンに依存するサイズ、ビッグ エンディアンのバイト順)
  • x - NUL バイト
  • X - 1 バイトのバックアップ
  • Z - NUL で埋められた文字列
  • @ - 絶対位置への NUL フィル
引数+ オプション。パックする 1 つ以上の引数を指定します


技術的な詳細



戻り値:

バイナリ文字列でデータを返します

PHP バージョン:

4+

変更ログ:

PHP 7.2 - float と double は、ビッグ エンディアンとスモール エンディアンの両方をサポートするようになりました。

PHP
7.0.15 - 「E」、「e」、「G」、「g」コードが追加されました。

PHP 5.6.3 - 「Q」、
「q」「J」「P」コードを追加しました。

PHP 5.5 - 「Z」コードが追加されました
(Perl 互換性のために "a" と同じ機能を保持します)。


その他の例

データをバイナリ文字列にパックします。

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

自分で試してみる »


❮ PHP その他のリファレンス


プログラミング学習を加速させる

プログラミングをプロの講師に教えてもらいませんか。

テックアイエスのプログラミングスクールは初心者も大歓迎です。年齢制限もありません。転職・副業に強く、挫折させない手厚いサポートで稼ぐ力を身につけましょう!

スクールの詳細