> 백엔드 개발 > PHP 튜토리얼 > PHP 캡슐화 페이지 페이징 클래스

PHP 캡슐화 페이지 페이징 클래스

墨辰丷
풀어 주다: 2023-03-28 17:14:01
원래의
1558명이 탐색했습니다.

이 글에서는 주로 PHP로 캡슐화된 페이지 페이징 클래스를 소개하고, PHP 수치 연산 및 문자열 연산과 관련된 기술을 분석하여 완전한 예제 형식으로 페이징 기능을 구현합니다.

자세한 내용은 다음과 같습니다.

클래스 파일 :

<?php
  //分页工具类
  class Page{
    /*
     * 获取分页字符串
     * @param1 string $uri,分页要请求的脚本url
     * @param3 int $counts,总记录数
     * @param4 int $length,每页显示的记录数
     * @param5 int $page = 1,当前页码
     * @return string,带有a标签的,可以点击发起请求的字符串
    */
    public static function getPageStr($uri,$counts,$length,$page = 1){
      //构造一个能够点击的字符串
      //得到数据显示的字符串
      $pagecount = ceil($counts/$length);        //总页数
      $str_info = "当前一共有{$counts}条记录,每页显示{$length}条记录,一共{$pagecount}页,当前是第{$page}页";
      //生成可以操作的连接:首页 上一页 下一页 末页
      //求出上一页和下一页页码
      $prev = ($page <= 1) ? 1 : $page - 1;
      $next = ($page >= $pagecount) ? $pagecount : $page + 1;
      $str_click = <<<END
        <a href="{$uri}?page=1">首页</a>
        <a href="{$uri}?page={$prev}">上一页</a>
        <a href="{$uri}?page={$next}">下一页</a>
        <a href="{$uri}?page={$pagecount}">末页</a>
END;
      //按照页码分页字符串
      $str_number = &#39;&#39;;
      for($i = 1;$i <= $pagecount;$i++){
        $str_number .= "<a href=&#39;{$uri}?page={$i}&#39;>{$i}</a> ";
      }
      //下拉框分页字符串:利用js的onchang事件来改变当前脚本的href
      $str_select = "<select onchange=\"location.href=&#39;{$uri}?page=&#39;+this.value\">";
      //将所有的页码放入到option
      for($i = 1;$i <= $pagecount;$i++){
        if($i == $page)
          $str_select .= "<option value=&#39;{$i}&#39; selected=&#39;selected&#39;>{$i}</option>";
        else
          $str_select .= "<option value=&#39;{$i}&#39;>{$i}</option>";
      }
      $str_select .= "</select>";
      //返回值
      return $str_info . $str_click . $str_number . $str_select;
    }
}
로그인 후 복사

요약: 위 내용은 이 글의 전체 내용이므로, 모든 분들의 공부에 도움이 되길 바랍니다.

관련 권장 사항:

php MSsql 서버에 연결하는 방법 요약

PHP 데이터베이스 작업 사용 mongodb

PHP에서 in_array 암시적 변환을 구현하는 단계에 대한 자세한 설명

위 내용은 PHP 캡슐화 페이지 페이징 클래스의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!

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