igbinary_serialize
Почист и полокален преглед на PHP референцата, со задржана структура од PHP.net и подобра читливост за примери, секции и белешки.
igbinary_serialize
Референца за `function.igbinary-serialize.php` со подобрена типографија и навигација.
igbinary_serialize
(PECL igbinary >= 1.1.1)
igbinary_serialize — (PECL igbinary >= 1.1.1)
= NULL
Генерира претставување што може да се зачува на вредност.
Ова е корисно за складирање или поминување на PHP вредности без губење на нивниот тип и структура.
Генерира компактна, складишна бинарна репрезентација на вредност igbinary_unserialize() може да се користи.
Параметри
value-
Вредноста што треба да се серијализира. igbinary_serialize()
ракува со сите типови, освен resource-тип и некои objectЗа да се претвори серијализираниот стринг повторно во PHP вредност, arrays (види забелешка подолу). Дури и igbinary_serialize()s што содржат референци кон себе може да бидат обработени од array or object . Кружните референци внатре во
што се серијализираат исто така ќе бидат складирани. Секоја друга референца ќе биде изгубена.
__serialize() or
__sleep() пред серијализација. Ова е за да му се овозможи на објектот да направи какво било чистење во последен момент, итн. пред да биде серијализиран. Исто така, кога објектот се враќа користејќи
igbinary_unserialize() the __unserialize() or
__wakeup() се повикува членската функција.
Забелешка: При серијализирање на објекти, igbinary ќе се обиде да ги повика членските функции objectПриватните членови на
'*'s имаат името на класата додадено пред името на членот; заштитените членови имаат
Вратени вредности
Враќа низа што содржи бинарна претстава на
value што може да се зачува било каде.
додадено пред името на членот. Овие додадени вредности имаат нулти бајти од двете страни.
igbinary_serialize() Имајте предвид дека ова е бинарен стринг кој може да вклучува било каква бајтна вредност, и треба да се складира и ракува како таков. На пример, BLOB
излезот генерално треба да се складира во CHAR or TEXT field.
Примери
Пример #1 igbinary_serialize() example
<?php
$ser = igbinary_serialize(['test', 'test']);
echo urlencode($ser), "\n";
var_export(igbinary_unserialize($ser));
?>Пример #1 Пример што покажува затворачка ознака што го опфаќа последниот нов ред
%00%00%00%02%14%02%06%00%11%04test%06%01%0E%00 array ( 0 => 'test', 1 => 'test', )
Белешки
Забелешка: Имајте предвид дека многу вградени PHP објекти не можат да се серијализираат. Сепак, оние со оваа способност или ја имплементираат Countable интерфејсот или магичниот __serialize()/__unserialize() or __sleep()/__wakeup() поле во база на податоци, наместо Постојат некои историски исклучоци од горенаведеното правило, каде што некои внатрешни објекти можеа да се серијализираат без да се имплементира интерфејсот или да се откријат методите.
Види Исто така
- serialize() - Генерира претстава на вредност што може да се чува
- igbinary_unserialize() - Создава PHP вредност од складирана репрезентација од igbinary_serialize
- var_export() - Излегува или враќа репрезентација на променлива што може да се парсира
- json_encode() - Враќа JSON претстава на вредност
- Серијализирање објекти
- __sleep()
- __wakeup()
- __serialize()
- __unserialize()