【发布时间】:2021-11-12 02:04:40
【问题描述】:
我有一个代码 User::find(0) 将在数据库类型对象中查找并返回第一个用户的数据。我可以设置像 $user->name = "Name 1" 或 $user->name = "Name 2" 这样的值。
“不能使用 stdClass 类型的对象作为数组”
我创建了一个新变量,例如 $teacher = (object) [] 和 $teacher = new \stdClass。我可以设置像 $teacher->name = "Teacher 1" 这样的值。但是,如果我将其设置为 $teacher['name'] = "Teacher 1",则会出现上述错误。
预期类型“对象”。找到字符串[]。
所以,我试着让 $teacher = array() 和 $teacher = [];我可以设置像 $teacher['name'] = "Teacher 1" 这样的值,但是如果我用 $teacher->name = "Teacher 2" 设置它会出现上述错误。
所以,我很困惑为什么可以使用 '->' 和 '[]' 设置 User::find(0) 对象。我仍在学习使用文档。我花了很多时间,但即使在另一个网站上也找不到它。你能告诉我如何制作像 User::find(0) 这样可以使用 '->' 和 '[]' 设置值的对象吗?
【问题讨论】: