php - yii2.0模型里,如何将查询的所有对象转为数组?

查看:222
本文介绍了php - yii2.0模型里,如何将查询的所有对象转为数组?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

问 题

    public function getData(){

    $cates=Cats::find()->asarray()->all();
     
      return $cates;
    }
    

上面那是模型里的代码.

$catsModel=Cats::model();
$cates=$catsModel->getData();

这是控制器调用时写的,现在问题是,我打印那个$cates会报错
Non-static method CActiveRecord::find() should not be called statically

或者说asarray()未定义,我在模型上面该use哪些东西呢?是不是因为我模型上面一个没use才报错,直接是

class Cats extends CActiveRecord{
    public static function model($className= __CLASS__){
        return parent::model($className);
    }

求助高人,请教我如何能在控制器里调那个getData取cats表时能调用数组出来而不是对象,我该添加哪些东西才不报错,谢谢指教。

解决方案

我说下我目前发现的问题:
1.问题说的是yii2,代码中出现CActiveRecord,这个类是yii1才有的
2.model中的public static function model($className= __CLASS__)这个方法在yii2yiidbActiveRecord中也没有
3.PHP报错

Non-static method CActiveRecord::find() should not be called statically

字面意思:CActiveRecord::find()不是静态方法,但是题主使用的是静态调用方式

综上所述,题主的问题定位不清,无法作答。

这篇关于php - yii2.0模型里,如何将查询的所有对象转为数组?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆