2017-12-06 17:03:14 3197次浏览 4条回答 0 悬赏 30 金钱

将ActiveDataProvider->getModels()得到的结果怎么把里面数据提取出来, 用于转换成json,发到前台.
我现在用的是(new \yii\db\Query())->select(...)->all(), 得到数据再转成Json到前台.

最佳答案

  • Steven0T 发布于 2017-12-07 09:34 举报

    这个不就已经拿到对象结果了吗,遍历用对象去取就行了,看看这个你就明白了:

    $arr = array();
    foreach($data as $t)
    {
         $arr[] = $t->attributes;
    }
    

    至于你用PHP提供的方法也好,其他也好,取出你需要的数组就行

    1 条回复
    回复于 2017-12-07 09:40 回复

    这种方法我倒是知道 ,我以为有现成的函数直接取出来的。

  • 回答于 2017-12-07 10:22 举报

    应该没有,因为在我看来,你gerModel()其实就是已经拿到数据了,只不过是对象的形式,你想取里面具体的,那你就要自己处理

  • 回答于 2017-12-14 11:44 举报

    还真是受教了,我一直也在想怎么取数据 ,原来是getModels!!

  • 回答于 2017-12-14 11:45 举报

    其实可以在getModels以后,将对象转换为数组 ,有一个组件 ArrayHelper 转换为数组以后,再转换为json就简单了

您需要登录后才可以回答。登录 | 立即注册
秀小川
主管

秀小川

注册时间:2017-08-16
最后登录:2022-05-23
在线时长:20小时47分
  • 粉丝1
  • 金钱455
  • 威望0
  • 积分655

热门问题