Funkcja serialize

Funkcja serialize konwertuje zmienną PHP na ciąg znaków w specjalnym formacie, który można zapisać w bazie danych lub przesłać między skryptami. Otrzymany ciąg znaków można przywrócić z powrotem do zmiennej za pomocą funkcji unserialize. Funkcja działa z dowolnymi typami danych PHP: liczbami, ciągami znaków, tablicami, obiektami.

Składnia

phpserialize(mixed $value);

Przykład

Serializacja prostej tablicy:

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

Wynik wykonania kodu:

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

Przykład

Serializacja ciągu znaków:

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

Wynik wykonania kodu:

php's:5:"abcde";'

Przykład

Serializacja obiektu:

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

Wynik wykonania kodu:

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;}'

Zobacz też

  • funkcję unserialize,
    która przywraca dane ze zserializowanego ciągu znaków
  • funkcję json_encode,
    która konwertuje dane do formatu JSON