PHP.nl

igbinary_serialize

igbinary_serialize

Generates a compact, storable binary representation of a value

 **igbinary_serialize** mixed $value

Generates a storable representation of a value.

This is useful for storing or passing PHP values around without losing their type and structure.

To make the serialized string into a PHP value again, can be used. igbinary_unserialize

value The value to be serialized. handles all types, except the -type and some s (see note below). Even arrays that contain references to itself can be processed by . Circular references inside the array or object that is being serializend will also be stored. Any other reference will be lost. igbinary_serialize``resource``object``igbinary_serialize

   When serializing objects, igbinary will attempt to call the member functions
    or
    prior to serialization.
   This is to allow the object to do any last minute clean-up, etc. prior
   to being serialized. Likewise, when the object is restored using
    the  or
    member function is called.
  __serialize()__sleep()`igbinary_unserialize`__unserialize()__wakeup()

Opmerking: > Private members of objects have the class name prepended to the member name; protected members have a prepended to the member name. These prepended values have null bytes on either side. '*'

Returns a string containing a byte-stream representation of that can be stored anywhere. value

Note that this is a binary string which can include any byte value, and needs to be stored and handled as such. For example, output should generally be stored in a field in a database, rather than a or field. igbinary_serialize``BLOB``CHAR``TEXT

Voorbeeld: example

<?php
$ser = igbinary_serialize(['test', 'test']);
echo urlencode($ser), "\n";
var_export(igbinary_unserialize($ser));
?>
%00%00%00%02%14%02%06%00%11%04test%06%01%0E%00
array (
  0 => 'test',
  1 => 'test',
)

Opmerking: > Note that many built-in PHP objects cannot be serialized. However, those with this ability either implement the interface or the magic / or / methods. If an internal class does not fulfill any of those requirements, it cannot reliably be serialized with any serializer. Serializable__serialize()__unserialize()__sleep()__wakeup()

There are some historical exceptions to the above rule, where some internal objects could be serialized without implementing the interface or exposing the methods.

serialize``igbinary_unserialize``var_export``json_encodeSerializing Objects__sleep()__wakeup()__serialize()__unserialize()