Cake php 3.4.6数据拉取给出错误值并返回对象

Cake php 3.4.6数据拉取给出错误值并返回对象,php,cakephp,Php,Cakephp,我一直试图从蛋糕中提取数据。但当我通过打印查看时,我会不断获取对象数据 $userDetails = $this->UserDetails->find()->where(['UserDetails.user_id' => $id])->all(); print_r($userDetails); 结果 Cake\ORM\ResultSet Object([items]=>Array([0]=>App\Model\Entity\UserDetail Object([

我一直试图从蛋糕中提取数据。但当我通过打印查看时,我会不断获取对象数据

$userDetails =  $this->UserDetails->find()->where(['UserDetails.user_id' => $id])->all();
print_r($userDetails);
结果

Cake\ORM\ResultSet Object([items]=>Array([0]=>App\Model\Entity\UserDetail Object([id]=>6[user\u id]=>10[firstName]=>Rey Norbert[lastName]=>Besmonte[address]=>[contact]=>[age]=>[created]=>Cake\I18n\FrozenTime Object([time]=>2017-05-24T03:10:55+00:00[timezone]=>UTC[fixedNowTime]=>修改]=>Cake\I18n\FrozenTime对象([time]=>2017-05-24T03:10:55+00:00[时区]=>UTC[fixedNowTime]=>)[[new]]=>[[accessible]]=>Array([*]=>1[id]=>)[[dirty]]=>Array()[[original]=>Array()[[virtual]]=>Array()[[errors]]=>Array()[[invalid]=>Array()[[repository]]]=>UserDetails]=>

我不确定为什么会显示
ake\ORM\ResultSet对象([items]=>Array([0]=>App\Model\Entity\UserDetail对象


在php cake 2.x中,我对此没有问题。

Cakephp 3.x输出对象而不是数组()。 如果您需要阵列,您可以使用我们的e toArray()

示例:-

$userDetails =  $this->UserDetails->find('all')->where(['UserDetails.user_id' => $id])->toArray();
print_r($userDetails);
$userDetails =  $this->UserDetails->find('all')->where(['UserDetails.user_id' => $id])->first();
print_r($userDetails);
如果只想返回单行,则可以使用first()

示例:-

$userDetails =  $this->UserDetails->find('all')->where(['UserDetails.user_id' => $id])->toArray();
print_r($userDetails);
$userDetails =  $this->UserDetails->find('all')->where(['UserDetails.user_id' => $id])->first();
print_r($userDetails);
  • 调用查询的execute()方法。这将返回 基础语句对象,并将与一起使用 插入/更新/删除查询
  • 调用查询的first()方法。这将返回第一个 结果是SELECT生成的集合(它将限制1添加到查询中)
  • 调用查询的all()方法。这将返回结果集 并且只能与SELECT语句一起使用
  • 调用查询的toArray()方法
根据您的要求使用以下各项:

$userDetails =  $this->UserDetails->find()->where(['UserDetails.user_id' => $id])->all();

你想要数组而不是对象?是的。它只是将对象转换为数组,我希望它返回为----------------->([id]=>6[user\u id]=>10[firstName]=>Rey Norbert[lastName]=>Besmonte[address]=>[contact]=>[age]=>[created]=>Cake\I18n\FrozenTime对象([time]=>2017-05-24T03:10:55+00:00)[timezone]=>UTC[fixedNowTime]=>)[modified]=>Cake\I18n\FrozenTime对象([time]=>2017-05-24T03:10:55+00:00[timezone]=>UTC[fixedNowTime]=>)感谢它现在的工作..仍然有红丝绒的味道。与2.x Cake有很大的不同。