Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
class A implements Serializable {
private $x='y';
function __construct()
{
echo __METHOD__ . " called\n";
}
function __destruct()
{
echo __METHOD__ . " called\n";
}
function serialize()
{
return $this->x;
}
function unserialize($s)
{
$this->x=$s;
}
}
class B {
private $x='y';
function __construct()
{
echo __METHOD__ . " called\n";
}
function __destruct()
{
echo __METHOD__ . " called\n";
}
function __sleep()
{
return array('x');
}
}
echo "Serializable (the new way)\n";
$x1=new A;
$s=serialize($x1);
var_dump($s);
$y1=unserialize($s);
var_dump($y1);
echo "__sleep/__wakeup (the old way)\n";
$x2=new B;
$s=serialize($x2);
var_dump($s);
$y2=unserialize($s);
var_dump($y2);
Нюансы сериализации