Wenn ich phpinfo () oder php -i von der CLI aus mache, bekomme ich folgende Ausgabe:
%Vor%Mir war nicht bekannt, dass die PHP-Serialisierung ein binäres Format unterstützt, und in der Dokumentation scheint es nichts zu geben.
Ich wollte igbinary für die Sitzungsserialisierung auf einem Memcached-Server verwenden, also frage ich mich wie php_binary vergleicht.
Die igbinary
PHP-Erweiterung bietet eine neue Sitzung serialize / deserialize-Handler, der sich von den PHP-eigenen Implementierungen unterscheidet, nämlich php
und php_binary
.
Um Ihre Frage zu beantworten: Diese Handler vergleichen überhaupt nicht, sie sind völlig unterschiedlich. Die Unterschiede, die igbinary eingeführt werden, sind in der Readme-Datei des Projekts dokumentiert.
Ich nehme an, Sie stellen die Frage, weil Sie das Wort binary innerhalb der beiden gefunden haben: ig binary und php_ binary . Aber das sagt nicht viel. Vergleichen Sie zuerst den php
mit dem php_binary
-Handler:
Der% session serialize / deserialize-Handler php_binary
ist nahezu identisch mit dem standardmäßigen php
-Handler. Sie unterscheiden sich nur darin, wie die Variablennamen in der Sitzung codiert sind.
php_binary
wird allen Session-Variablennamen die binäre Länge des Namens voranstellen. Mit php
hat jeder Variablenname ein Suffix des |
-Zeichens ( \x7C
, dezimal 124
). Soweit ich weiß, unterscheidet sich die Serialisierung der Variablenwerte überhaupt nicht.
Also ist die Serialisierung der Werte zwischen dem php
und php_binary
Handler identisch.
Neben dem kleinen Unterschied zwischen den Vor- / Suffixen von Sitzungsvariablen-Namen fragt die Frage also tatsächlich, wie sich igbinary
mit der PHP-Serialisierung (die in den Sitzungsdaten verwendet wird) vergleichen lässt. Diese Unterschiede sind in der igbinary
readme beschrieben. Es beschreibt recht gut, was getan wurde und warum.
Wenn Sie igbinary
serialization auch für serialize / unserialize verwenden möchten, bietet die Erweiterung zwei Ersatzfunktionen:
igbinary_serialize
und igbinary_unserialize
- verwendet wie ihre Verwandten Cousins.
Wenn Sie sich über einige Besonderheiten der Unterschiede Sorgen machen, fragen Sie bitte.
Tags und Links php serialization igbinary