序列化PHP对象(Doctrine查询)

时间:2010-11-11 16:08:28

标签: php serialization doctrine-query

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

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

结果是:

string(2) "N;"

我做错了什么?

1 个答案:

答案 0 :(得分:2)

您无法在PHP中序列化每个对象。对象本身 - 通过实现Serializeable interface PHP Manual - 可以保护自己不被序列化。例如。

然后返回NULL值(或者不返回PHP中NULL的任何内容)。这正是序列化字符串的内容:序列化的NULLN;)。

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


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