Laravel收集到阵列

时间:2017-12-18 01:09:57

标签: php laravel

我尝试将我的产品访问次数转换为图表,我可以将其显示为google-analytic

例如

Promise {
_c: [],
_a: undefined,
_s: 0,
_d: false,
_v: undefined,
_h: 0,
_n: false }

现在我用作图表的是this package

这是我的图表代码:

PrinterJob job = PrinterJob.getPrinterJob();
        job.setJobName("Print Data");

        job.setPrintable(new Printable(){
        public int print(Graphics pg,PageFormat pf, int pageNum){
                pf.setOrientation(PageFormat.LANDSCAPE);
             if(pageNum>0){
                return Printable.NO_SUCH_PAGE;
            }

            Graphics2D g2 = (Graphics2D)pg;
            g2.translate(pf.getImageableX(), pf.getImageableY());
            g2.scale(0.24,0.24);

            contentPane.paint(g2);


            return Printable.PAGE_EXISTS;


        }
});

    boolean ok = job.printDialog();
    if(ok){
    try{

    job.print();
    }
    catch (PrinterException ex){}
    }

正如您所看到的,我的访问次数将保存在Product1 200 visits product5 30 visits product10 47visits 表格中,我想要做的就是在我的图表中获取计数并将其作为标签获取产品标题。

进展:

  • 我已经完成了我的访问次数
  

$ chartjson = Pagevisit :: all() - > toJson();           // ....        - >值(' visitable_id&#39)

  • 无法将我的产品标题作为这些计数的标签。

我目前的错误是:

  

array_push()期望参数1为数组,字符串为

更新

我设法得到我的信息+他们的头衔

screenshot

这是代码

$chartjson = Pagevisit::all()->toJson();
  $chartjsontitle =
      DB::table('products')
      ->join('page-visits', function ($join) {
          $join->on('products.id', '=', 'page-visits.visitable_id');
      })->get();
$value = collect($chartjsontitle)->toArray();

$chart4 = Charts::database($chartjson, 'bar', 'highcharts')
         ->elementLabel("Total")
         ->dimensions(1000, 500)
         ->responsive(false)
         ->values('visitable_id')
         ->labels($value);

ISSUE

我有2个产品可以计算访问次数,但正如您所看到的,每个计数我都有一个酒吧,除了1个酒吧所有计数。

  • 示例:1个标题为product1且计数为11次,但现在我有11个标题为product1的栏目

1 个答案:

答案 0 :(得分:0)

已解决(以不同方式)

我放弃了这个问题的图表并决定使用列表对象,这里是解决方案Get value with max amount in Laravel