如何在Yii2中获取所有ActiveRecord对象


How to get all ActiveRecord objects in Yii2?

如何像数组一样获得Yii2中的所有ActiveRecord对象,它可以由foreach()迭代。

这是应该工作的代码,但它返回零而不是实际数据。

    public function getAllCategories(){
    $categoriesList=[];
    $categories=  Category::find()->orderBy("id")->all();
    foreach ($categories as $category){
        $categoriesList[]+=$category->title;
    }
    return $categoriesList;

}

如果您正在获取对象,您仍然可以对它们进行迭代。尝试进行以下简单的更改(查看"+="更改为"0"):

public function getAllCategories(){
    $categoriesList = array();
    $categories = Category::find()->orderBy("id")->all();
    foreach ($categories as $category){
        $categoriesList[] = $category->title;
    }
    return $categoriesList;
}

以下是Yii2:link中活动记录的一些参考。使用find()->all(),您将获得一个包含对象的数组。

您的php语法有错误-您使用的是+=,无法添加字符串,您应该使用just=或.=