Как работает сериализация / десериализация объекта?

Я читал о концепциях сериализации / десериализации PHP. Мне было интересно, как они хранятся в файловой системе / db. Я думаю, это в двоичном формате. Однако мне интересно, как хранится весь класс? Я понял, что данные в элементе данных могут быть сохранены, но как хранятся методы?

Я имею в виду, как PHP узнает, какой код написан внутри функции, например someFunc () ?

$obj = new ClassName();
$obj->someFunc();
$serial = serialize($obj);
$unserialobj = unserialize($serial);
$unserialobj->someFunc();

PHP может знать, что делать в строке №2, но как он знает, что делать в строке №5, которая является несериализованным объектом? Он также сохраняет код?

7
задан Bas Peeters 18 August 2018 в 10:32
поделиться