分页集合如何追加数据?

我获取到的分页里只有一条数据 代码如下。

LengthAwarePaginator {#520 ▼
  #total: 1
  #lastPage: 1
  #items: Collection {#521 ▼
    #items: array:1 [▼
      0 => array:2 [▼
        "id" => 1
        "time" => 2017-08-18
      ]
    ]
  }
  #perPage: 5
  #currentPage: 1
  #path: "http://localhost/test"
  #query: []
  #fragment: null
  #pageName: "page"

我现在的需求是希望可以在整个分页的数组中插入9条数据,使分页有10条数据,可以显示两页。这样相当于在time在前9天都有数据,,这种情况要怎么插入数据到分页集合中呢。

Good Good Study , Day Day Up!!
Jourdon
《L01 基础入门》
我们将带你从零开发一个项目并部署到线上,本课程教授 Web 开发中专业、实用的技能,如 Git 工作流、Laravel Mix 前端工作流等。
《G01 Go 实战入门》
从零开始带你一步步开发一个 Go 博客项目,让你在最短的时间内学会使用 Go 进行编码。项目结构很大程度上参考了 Laravel。
讨论数量: 3

你得到的是一个分页类对象。已经实例化的分页类对象是无法操作其属性的(因为其属性都是protected

  • 最简单的方法可能直接是往数据库填充10条数据。(如果确实没有,并不想填充请看下面)
  • 查询的时候不要直接使用 pageintor 函数
    $data = [$a];
    $data = [$a, $b, $c, $d ...];   //生成其他九条数据
    $paginator = new LengthAwarePaginator($data, $total = 10, $perPage = 5, $page = 1, [
            'path'     => Paginator::resolveCurrentPath();, //生成路径
            'pageName' => 'page',
        ]);

    关于分页类的具体用法和实现可以自己看下 vendor\laravel\framework\src\Illuminate\Pagination\LengthAwarePaginator.php

7年前 评论
Jourdon

@cellus 感谢

7年前 评论

获得LengthAwarePaginator对象以后 ,可以使用对象的 getCollection() 方法 获得\Illuminate\Support\Collection 对象,此对象的push , prepend 方法可以向分页里面追加数据。

7年前 评论

讨论应以学习和精进为目的。请勿发布不友善或者负能量的内容,与人为善,比聪明更重要!