Funkce serialize

Funkce serialize převádí proměnnou PHP na řetězec speciálního formátu, který lze uložit v databázi nebo přenést mezi skripty. Výsledný řetězec lze obnovit zpět na proměnnou pomocí funkce unserialize. Funkce pracuje s libovolnými datovými typy PHP: čísly, řetězci, poli, objekty.

Syntaxe

phpserialize(mixed $value);

Příklad

Serializace jednoduchého pole:

php<?php
  $arr = [1, 2, 3, 4, 5];
  $res = serialize($arr);
  echo $res;
?>

Výsledek provedení kódu:

php'a:5:{i:0;i:1;i:1;i:2;i:2;i:3;i:3;i:4;i:4;i:5;}'

Příklad

Serializace řetězce:

php<?php
  $str = 'abcde';
  $res = serialize($str);
  echo $res;
?>

Výsledek provedení kódu:

php's:5:"abcde";'

Příklad

Serializace objektu:

php<?php
  class Test {
    public $a = 1;
    protected $b = 2;
    private $c = 3;
  }
  $obj = new Test();
  $res = serialize($obj);
  echo $res;
?>

Výsledek provedení kódu:

php'O:4:"Test":3:{s:1:"a";i:1;s:4:"'."\0".'*'."\0".'b";i:2;s:7:"'."\0".'Test'."\0".'c";i:3;}'

Viz také

  • funkci unserialize,
    která obnovuje data ze serializovaného řetězce
  • funkci json_encode,
    která převádí data do JSON formátu