使用 unserialize() 在控制台请求中反序列化会话数据



我有一个要求,我必须从控制台请求更改会话。现在控制台无法访问会话。我确实已经弄清楚了这一切。我不能使用 session_decode(),因为我在会话中。

但是我在从会话中反序列化"序列化数据"时遇到问题。

我知道会话序列化是基于 php.ini 值的。

;用于序列化数据 php 的处理程序是 PHP 的标准序列化程序。

session.serialize_handler = php

我想知道我可以在php_ini中为session.serialize_handler设置的可能值,这些值将允许我在控制台中反序列化数据。

现在我得到了一个例外。 unserialize(): 8806 字节的偏移量 0 处出错。

我知道我是否设置了正确的序列化处理程序值,然后在 WEB 和控制台中使用相同的反序列化程序。我可以解决问题。

让我知道克服这种情况的可能解决方案。

我遇到了这个问题,因为我无法反序列化序列化数据。因为序列化是使用不同的参数使用不同的函数完成的。

所以我把php_ini改成了使用session.serialize_handler从"php"到"php_serialize"。

"

php"和"php_serialize"都是可以根据PHP文档设置的不同选项。

所以更改为php_serialize帮助我使用 PHP 函数反序列化进行取消系列化。

最新更新