1

我正在尝试在 Symfony 中序列化一个 Doctrine_query 对象:

var_dump(serialize($this->pager->getQuery()));

结果是:

string(2) "N;"

我究竟做错了什么?

4

1 回答 1

2

你不能序列化PHP 中的每个对象。对象本身——通过实现Serializeable接口PHP 手册——可以保护自己免于被序列化。

然后它们返回一个NULL值(或者不返回NULLPHP 中的任何内容)。这正是您的序列化字符串的内容:一个序列化的NULL( N;)。

甚至还有一些内置类比这更进一步。但它也适用于用户定义的类和内置类:其中一些不可用于序列化。


无法在 PHP 中序列化的内置类的一个示例是DOMDocument,但是可以添加功能,如以下问题所示:

于 2011-07-17T13:00:26.600 回答