【问题标题】:Fetch Data as array in Laravel在 Laravel 中以数组形式获取数据
【发布时间】:2021-11-19 13:06:22
【问题描述】:
array:4[
  "nb" => 10
  "dfs" => 11
  "ff" => 9
]

我想从course 表中获取具有userId$userId 的所有行,对于这些行中的每一行,我需要获取idcourseNameskillIdsubjectId列的值。由于dd($course) 给了我上述结果,我无法将值分配给任何变量。如何解决这个问题?

$course=Course::where('userId',$userId)->pluck('id','courseName','skillId','subjectId')->toArray();
$data=[];
foreach($course as $row){
$data['skillId']=$row['skillId'];
$data['subjectId']=$row['subjectId'];
}

【问题讨论】:

  • 试试Course::where('userId',$userId)->select(['id','courseName','skillId','subjectId'])->all()->toArray();
  • @FatimaMazhit 得到错误call To undefined method Illuminate\\Datbase\\Eloquent\\Builder::all()
  • 哎呀,应该是 get() 而不是 all();
  • 我修好了。谢谢

标签: php laravel eloquent laravel-8 query-builder


【解决方案1】:

你需要选择你的字段,在使用 get() 方法获取结果之后,在 toArray() 方法之后转换为数组。

 $course = Course::where('userId',$userId)->select(['id','courseName','skillId','subjectId'])->get()->toArray();

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-08-27
    • 1970-01-01
    • 1970-01-01
    • 2018-05-19
    • 1970-01-01
    相关资源
    最近更新 更多