<?php
class Foo implements Serializable
{
private $foo;
private $bar;
private $isCreatedBySerialization = false;
public function __construct(int $foo, int $bar)
{
$this->foo = $foo;
$this->bar = $bar;
}
public function serialize()
{
return serialize([
'foo' => $this->foo,
'bar' => $this->bar,
]);
}
public function unserialize($serialized)
{
$unserialized = unserialize($serialized);
$this->foo = $unserialized['foo'];
$this->bar = $unserialized['bar'];
$this->isCreatedBySerialization = true;
}
}
$foo = new Foo(3, 6);
dump($foo);
dump($serializedFoo = serialize($foo));
dump(unserialize($serializedFoo));