我希望存储在会话中的类实例包含一个已加载的DOMDocuments数组。
正如这里的答案之一所指出的:PHP quirks and pitfalls,当您序列化包含XML的对象时,XML结构在反序列化过程中不再存在。据我所知,PHP5应该自动序列化会话数据,所以我需要知道的是如何在序列化/反序列化过程中幸存下来?
我已经读过了,看起来这是不可能的,再加上使用自动序列化/反序列化来写入和读取会话文件所涉及的开销,这似乎使得只读写__sleep和__wakeup上的类实例中的XML文件更可取。真的是这样吗?
发布于 2011-06-17 19:19:29
http://php.net/manual/en/function.serialize.php
这对于存储或传递PHP值而不丢失它们的类型和结构非常有用。
要序列化的值。serialize()处理除resource-type.之外的所有类型您甚至可以序列化()数组,这些数组包含对自身的引用。序列化的数组/对象中的循环引用也将被存储。任何其他引用都将丢失。
也许您可以考虑将原始数据存储到memcache、数据库
当您的会话指向该对象时(如memcache键、数据库行ID)
附加读出
你可能会对以下内容感到好笑(也许我错了)-
发布于 2011-06-21 22:06:27
为什么不简单地使用export the DOMDocument as a string,然后序列化这个字符串呢?
https://stackoverflow.com/questions/6304997
复制相似问题