> PHP 프레임워크 > ThinkPHP > 배열을 사용하여 페이지가 매겨진 데이터 만들기

배열을 사용하여 페이지가 매겨진 데이터 만들기

藏色散人
풀어 주다: 2019-09-18 13:57:10
앞으로
3204명이 탐색했습니다.

배열을 사용하여 페이지가 매겨진 데이터 만들기

지침

사용 버전: 5.1.35 LTS

데이터가 RPC 원격 호출 인터페이스에서 얻은 배열이고 페이지 매김이 프런트 엔드 페이지에 표시되어야 하는 시나리오가 있습니다. .

Solution

thinkPaginate 클래스의 make 메소드를 사용하여 페이지가 매겨진 데이터를 생성할 수 있습니다. 메소드 프로토타입 만들기:

/**
     * @access public
     * @param       $items   需要分页的数据
     * @param       $listRows 每页数据条数
     * @param null  $currentPage 当前页数
     * @param null  $total  总页数
     * @param bool  $simple  是否使用简单模式(只有上一页和下一页)
     * @param array $options 其他参数选项,如查询参数,url路径等
     * @return Paginator  返回一个分页对象
     */
    public static function make($items, $listRows, $currentPage = null, $total = null, $simple = false, $options = [])
    {
        return new static($items, $listRows, $currentPage, $total, $simple, $options);
    }
로그인 후 복사

전달해야 하는 매개변수에 대한 코드 주석을 확인하세요.

thinkPaginate 클래스는 추상 클래스이므로 공개 메서드를 사용하려면 다른 클래스에서 이를 상속받아야 합니다. 프레임워크의 thinkpaginatordriverBootstrap 클래스가 이를 상속하므로 이 클래스를 사용하여 make 메소드를 호출할 수 있습니다.

따라서 배열에서 페이지 매김 데이터를 생성하는 메소드를 작성할 수 있습니다. 이는 아마도 다음과 같습니다:

private function getPaginateData($data, $page, $query){
    return Bootstrap::make($data, $perPage, $page, $total, false, ['path' => url('module/controller/action'), 'query' => $query]);
}
로그인 후 복사

이 메소드를 사용하여 페이징 객체를 생성한 후 예: $data = $this->getPaginateData(. ..) 프로세서의 템플릿에 대한 제어 출력에서 ​​템플릿 페이지에 추가할 수 있습니다.

{$data|raw}
로그인 후 복사

템플릿 엔진이 자동으로 페이징 스타일을 렌더링합니다.

추천 튜토리얼: thinkphp 튜토리얼

위 내용은 배열을 사용하여 페이지가 매겨진 데이터 만들기의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

관련 라벨:
원천:learnku.com
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿