Eloquent 只获取一列作为数组

新手上路,请多包涵

如何使用 eloquent 在 laravel 5.2 中仅将一列作为一维数组?

我努力了:

 $array = Word_relation::select('word_two')->where('word_one', $word_id)->get()->toArray();

但这一个将其作为二维数组提供,例如:

 array(2) {
      [0]=>
      array(1) {
        ["word_one"]=>
        int(2)
      }
      [1]=>
      array(1) {
        ["word_one"]=>
        int(3)
      }
    }

但我想得到它:

 array(2) {
    [0]=>2
    [1]=>3
}

原文由 Riiwo 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 331
2 个回答

您可以使用 pluck 方法:

 Word_relation::where('word_one', $word_id)->pluck('word_two')->toArray();

有关可用于集合的方法的更多信息,您可以查看 Laravel 文档

原文由 Bogdan 发布,翻译遵循 CC BY-SA 3.0 许可协议

简而言之,可以这样做:

 Model::pluck('column')

其中模型是模型,例如 User 模型和列作为列名,例如 id

如果你这样做

User::pluck('id') // [1,2,3, ...]

&当然你可以在采摘之前有任何其他条款,如 where 条款

原文由 APu 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题