igbinary
PHP 拡張機能は、PHP 独自の実装とは異なる新しいセッション シリアライズ/デシリアライズ ハンドラを提供しphp
ますphp_binary
。
あなたの質問に答えるには:これらのハンドラーはまったく比較できません。まったく異なります。igbinaryが導入する相違点は、プロジェクトの readme 内に文書化されています。
ig binaryと php_ binaryの 2 つの中でバイナリという単語を見つけたので、質問をしていると思います。しかし、それはあまり言いません。最初に をハンドラーと比較します。php
php_binary
セッションのphp_binary
シリアライズ/デシリアライズ ハンドラは、デフォルトphp
ハンドラとほぼ同じです。セッション内の変数名のエンコード方法のみが異なります。
php_binary
すべてのセッション変数名に名前のバイナリ長をプレフィックスとして付けます。php
各変数名には、|
文字 ( \x7C
, decimal ) の接尾辞が付いています124
。私が知っていることから、変数の値のシリアル化はまったく違いはありません。
したがって、値のシリアル化はハンドラーphp
とphp_binary
ハンドラーの間で同じです。
したがって、セッション変数名のプレ/サフィックスのわずかな違いに続いて、質問は実際にはigbinary
phpシリアライゼーション(セッションデータで使用される)とどのように比較されるかについて尋ねます。これらの違いについては、igbinary
readmeで概説されています。何が行われたのか、その理由がかなりよく説明されています。
igbinary
シリアライズ/アンシリアライズにもシリアライゼーションを使用したい場合、拡張機能は 2 つの代替関数を提供します。
igbinary_serialize
そしてigbinary_unserialize
- PHP のいとこのように使用されます。
細かい違いが気になる方はご相談ください。