如何访问来自模型的对象数据


How do I access object data that came from a model?

我正在考虑将CakePHP 2.0用户插件中的一些函数移植到CakePHP 3.0中。我在旧代码中遇到了这一行:

$user = $this->{$this->modelClass}->passwordReset($this->request->data);

我在这里调试了$user,得到了一个巨大的对象,里面装满了我需要的各种数据。完美:

'properties' => [
    'password' => '*****',
    'id' => '53f7b636-e558-4eef-9064-1e78494ef653',
    'username' => 'blahblah',
 ...
 ]

我以为一切都很顺利,直到下一行:

$Email->to($user[$this->modelClass]['email'])

这是即将发送的电子邮件的第一行。这里,$user[$this->modelClass]['email']返回null。所以我尝试直接访问对象,就像这样:

debug($user['properties']['email'])

这仍然返回null,我假设是因为我试图访问模型中的参数。我不确定$this->modelClass在CakePHP 3.0中有什么不同,或者我在其他地方搞砸了。有什么想法吗?

I应该是$user->email,因为新的ORM现在返回对象而不是数组