php - Yii2:如何获取其属性在数组中的记录?

标签 php yii2

我用 Yii2 建立了一个网站,我试图获取其类别可用的记录。我已经获得了可用的类别并将它们存储在一个数组中。但当我尝试使用“in”条件进行下一个查询时,它什么也没有返回。我确信数据库记录是正确的。

// Get active categories
$active_cat = Category::find()
              ->where(['status' => SystemCode::STATUS_ACTIVE])
              ->andwhere(['is_deleted' => 0])
              ->select(['id'])
              ->asArray()
              ->all();

// Get available articles
$query = Articles::find()
         ->where(['in', 'cat_id', $active_cat]);

最佳答案

您正在使用 all() 来获取类别列表,这将为您提供以下格式的行数组:

[
    ['id' => 1],
    // ...
],

但是对于下一个查询,您需要一个简单的 ID 列表 - 您可以通过使用 column() 来实现此目的方法替代:

// Get active categories
$active_cat = Category::find()
              ->where(['status' => SystemCode::STATUS_ACTIVE])
              ->andWhere(['is_deleted' => 0])
              ->select(['id'])
              ->column();

// Get available articles
$query = Articles::find()
         ->where(['in', 'cat_id', $active_cat]);

关于php - Yii2:如何获取其属性在数组中的记录?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57264166/

相关文章:

drop-down-menu - Yii2 dropDownList 默认值

php - Yii2登录无密码验证

php - 如何更改 Yii2 中 Controller 的默认 View ?

php - 如何在smartys模板中嵌入javascript代码

php - Codeigniter 3,ubuntu - 使用原生 PHP 邮件功能发送邮件,但不使用 CI 电子邮件类

php - 使用 PHP 的 preg_replace() 只返回 <h1>?

javascript - Yii2:注册 Asset Bundle 与注册外部 Js 文件

javascript - 如何在YII2中点击按钮后获取表格数组

php - 防止内存溢出的正确方法,知道允许的内存大小,但无法更改它

php - 在选择选项中显示来自 mysql 的一个表?