首页 > 解决方案 > 在 Laravel 6 中将结果查询到数组中

问题描述

我的数据库中有这个结果:

year  column1  column2
2018    11         7
2019    24        12
2020    15        13

我想把结果放在这样的数组中:

['2018','2019','2020']
[11, 24, 15 ]
[7, 12, 13]

我需要制作一个堆积条形图,我正在使用charts.js:

$chart01 = new BarChart;
$chart01 ->type('bar')
         ->labels(['2018','2019','2020']);

$chart01->dataset('Column1', 'bar', [11,24,15])
                    ->options(['backgroundColor' => ['#58D3F7','#58D3F7','#58D3F7']]);

$chart01->dataset('Column2', 'bar', [7,12,13])
                    ->options(['backgroundColor' => ['#5882FA','#5882FA','#5882FA']]);

$options = [];
$options['scales'] = [ 'xAxes' => [ ['stacked' => true] ], 'yAxes' => [ ['stacked' => true] ] ];
$chart01->options($options);

任何想法?谢谢!

标签: arrayschart.jslaravel-6

解决方案


您可以使用该pluck方法来实现您想要的。

例如:

$models = App\Model::all()

$models->pluck('year')->toArray(); // [2018, 2019, 2020]
$models->pluck('column1')->toArray(); // [11, 24, 15]
$models->pluck('column2')->toArray(); // [7, 12, 13]

您可以在此处阅读更多信息pluckhttps ://laravel.com/docs/6.x/collections#method-pluck


推荐阅读