関数 serialize

関数 serialize は PHP の変数を特殊なフォーマットの文字列に変換し、データベースに保存したり、スクリプト間で受け渡したりすることができます。得られた文字列は、関数 unserialize を使用して元の変数に復元することができます。この関数は、数値、文字列、配列、オブジェクトなど、あらゆる PHP のデータ型を扱うことができます。

構文

phpserialize(mixed $value);

例

単純な配列のシリアライズ:

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

コード実行結果:

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

例

文字列のシリアライズ:

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

コード実行結果:

php's:5:"abcde";'

例

オブジェクトのシリアライズ:

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

コード実行結果:

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

関連項目

  • 関数 unserialize、
    シリアライズされた文字列からデータを復元します
  • 関数 json_encode、
    データを JSON フォーマットに変換します