gpt4 book ai didi

PHP - 脚本试图执行方法或访问不完整对象的属性

转载 作者:可可西里 更新时间:2023-10-31 23:56:12 26 4
gpt4 key购买 nike

我正在使用 CI,我有一个 UserModel,它根据登录信息选择用户并设置一个 userVO 并在这样的 session 中添加这个 userVO:

$this->session->set_userdata('user', $userVO);

当我尝试访问此 session 时,它返回此错误:

Message: main() [function.main]: The script tried to execute a method 
or access a property of an incomplete object. Please ensure that the
class definition "UserVO" of the object you are trying to operate on
was loaded _before_ unserialize() gets called or provide a __autoload()
function to load the class definition.

我找到了一个“解决方案”,我需要 CI 在 session 类之前加载 UserVO 类并且它有效。

问题是我有很多 os VO 类,我会在 session 中需要它们,自动加载它们是一件坏事,因为我不会同时需要它们。

有什么解决方法吗?

在此先感谢您的帮助。

最佳答案

正在发生的事情是您正在将类的一个实例保存到 session 中。为了恢复它,您首先需要加载它作为实例的基类。您可能有很多 VO 类的“实例”,而不是很多 VO 类。您只需要加载具有类声明的文件。

类实例实际上只包含从基类发生的变化,而不是整个类。因此它需要底层类知道“默认值”是什么。

关于PHP - 脚本试图执行方法或访问不完整对象的属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8730419/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com