PHP实现的一分页工具类代码_PHP教程
总的页数是一个长度一定的木块,这把尺子在这个木块上滑动,前提,尺子的两端不能超出木块:D。发现这么一来要做的事情就是去找这个尺子在木块上的起始点,根据用户给传进来的page变量。哈哈,关键代码下面:
代码如下 复制代码
/**
* 把中间的看成一个可以滑动的固定长度的尺子
*
* 把$this->_totalShowPages 当成一个可以滑动的固定长度尺子,
* 然后$this->_totalPages就是一个给定长度的木块,尺子在这个
* 木块上滑动。情况两种:
* 1. 尺子长度大于木块长度,那么就直接输出所有的页码;
* 2. 尺子长度小于木块长度,那么就只用找到输出这个尺子长度页
* 数的起始点——$start, $end;
*www.111cn.Net
* @Access protected
* @Return void
* @Exception none
*/
protected function _getShowPageNumber()
{
$pageHtml = '';
//找到$start点
if($this->_curPage - 2 > 1) {
$start = $this->_curPage - 2;
} else {
$start = 1;
}
//找到$end 点
$end = $start + $this->_totalShowPages;
if($end >= $this->_totalPages) {
$end = $this->_totalPages;
$start = $end - $this->_totalShowPages; //保证页面显示的长度为$this->_totalShowPages
}
if($start != 1) {
$pageHtml .= $this->_getPageHtml(1);
$preMore = $this->_curPage - $this->_totalShowPages;
if($preMore $preMore = 1;
}
$pageHtml .= $this->_getMorePageHtml($preMore);
}
for($page = $start; $page $pageHtml .= $this->_getPageHtml($page);
}
if($end != $this->_totalPages) {
$pageHtml .= $this->_getMorePageHtml($end);
}
$pageHtml .= $this->_getNormalPageHtml($this->_totalPages);
return $pageHtml;
}
第一种老想法的代码实现:
代码如下 复制代码
/**
* 一步步的来
*
* @desc
*
* @Access protected
* @Return void
* @Exception none
*/
protected function _getShowPageNumberTwo()
{
if($this->_curPage _totalShowPages) {
for($page = 1; $page _totalShowPages; $page ++) {
$pageHtml .= $this->_getPageHtml($page);
}
$pageHtml .= $this->_getMorePageHtml($this->_totalShowPages);
$pageHtml .= $this->_getNormalPageHtml($this->_totalPages);
} else {
$pageHtml .= $this->_getNormalPageHtml(1);
if($this->_curPage == $this->_totalShowPages) {
$pageHtml .= $this->_getMorePageHtml(1);
} else {
$pageHtml .= $this->_getMorePageHtml($this->_curPage - $this->_totalShowPages);
}
if($this->_curPage + $this->_totalShowPages >= $this->_totalPages) {
for($page = $this->_totalPages - $this->_totalShowPages; $page _totalPages; $page ++) {
$pageHtml .= $this->_getPageHtml($page);
}
} else {
$start = $this->_curPage - 2;
$end = $this->_curPage + $this->_totalShowPages - 2;
for($page = $start; $page $pageHtml .= $this->_getPageHtml($page);
}
$pageHtml .= $this->_getMorePageHtml($this->_curPage + $this->_totalShowPages - 2);
$pageHtml .= $this->_getNormalPageHtml($this->_totalPages);
}
}
return $pageHtml;
}
示例图:
类文件下载:HPage.php (等我这个小类库完成了再一起放上 :D)。
更多详细内容请查看:http://www.bKjia.c0m/phper/php/56745.htm

핫 AI 도구

Undresser.AI Undress
사실적인 누드 사진을 만들기 위한 AI 기반 앱

AI Clothes Remover
사진에서 옷을 제거하는 온라인 AI 도구입니다.

Undress AI Tool
무료로 이미지를 벗다

Clothoff.io
AI 옷 제거제

Video Face Swap
완전히 무료인 AI 얼굴 교환 도구를 사용하여 모든 비디오의 얼굴을 쉽게 바꾸세요!

인기 기사

뜨거운 도구

메모장++7.3.1
사용하기 쉬운 무료 코드 편집기

SublimeText3 중국어 버전
중국어 버전, 사용하기 매우 쉽습니다.

스튜디오 13.0.1 보내기
강력한 PHP 통합 개발 환경

드림위버 CS6
시각적 웹 개발 도구

SublimeText3 Mac 버전
신 수준의 코드 편집 소프트웨어(SublimeText3)

Binance Square는 Binance Exchange가 제공하는 소셜 미디어 플랫폼으로, Cryptocurrencies와 관련된 정보를 전달하고 공유 할 수있는 공간을 사용자에게 제공합니다. 이 기사는 Binance Plaza의 기능, 신뢰성 및 사용자 경험을 자세히 살펴 보려면이 플랫폼을 더 잘 이해할 수 있도록 도와줍니다.

PHP 성능 최적화는 다음 단계를 통해 달성 할 수 있습니다. 1) 스크립트 상단에 require_once 또는 include_once를 사용하여 파일로드 수를 줄입니다. 2) 데이터베이스 쿼리 수를 줄이기 위해 전처리 문 및 배치 처리를 사용하십시오. 3) Opcode 캐시에 대한 Opcache 구성; 4) PHP-FPM 최적화 프로세스 관리를 활성화하고 구성합니다. 5) CDN을 사용하여 정적 자원을 배포합니다. 6) 코드 성능 분석을 위해 Xdebug 또는 Blackfire를 사용하십시오. 7) 배열과 같은 효율적인 데이터 구조를 선택하십시오. 8) 최적화 실행을위한 모듈 식 코드를 작성하십시오.

의존성 주입 (DI)을 사용하는 이유는 코드의 느슨한 커플 링, 테스트 가능성 및 유지 관리 가능성을 촉진하기 때문입니다. 1) 생성자를 사용하여 종속성을 주입하고, 2) 서비스 로케이터 사용을 피하고, 3) 종속성 주입 컨테이너를 사용하여 종속성을 관리하고, 4) 주입 종속성을 통한 테스트 가능성을 향상 시키십시오.

OUYI OKX6.118.0에 대한 최신 다운로드 자습서 : 1. 기사의 빠른 링크를 클릭하십시오. 2. 다운로드를 클릭하십시오 (웹 사용자 인 경우 정보를 먼저 등록하십시오). 최신 Android 버전 v6.118.0은 거래를보다 쉽게 할 수 있도록 일부 기능과 경험을 최적화합니다. 보다 극단적 인 거래 경험을 경험하려면 지금 앱을 업데이트하십시오.

세계 최고의 암호 화폐 교환으로서 Binance는 항상 사용자에게 안전하고 편리한 거래 경험을 제공하기 위해 최선을 다하고 있습니다. 시간이 지남에 따라 Binance는 사용자의 변화하는 요구를 충족시키기 위해 플랫폼 기능과 사용자 인터페이스를 지속적으로 최적화했습니다. 2025 년 Binance는 사용자 경험을 더욱 향상시키기위한 새로운 로그인 포털을 시작했습니다.

TheBesteptroachForendingeMailsInphPisusingThephPmailerlibraryDuetoitsReliability, featurerichness 및 reaseofuse.phpmailersupportssmtp, proversDetailErrorHandling, supportSattachments, andenhancessecurity.foroptimalu

세계 최고의 암호 화폐 교환으로서 Binance는 항상 사용자에게 안전하고 편리한 거래 경험을 제공하기 위해 최선을 다하고 있습니다. 시간이 지남에 따라 Binance는 사용자의 변화하는 요구를 충족시키기 위해 플랫폼 기능과 사용자 인터페이스를 지속적으로 최적화했습니다. 2025 년 Binance는 사용자 경험을 더욱 향상시키기위한 새로운 로그인 포털을 시작했습니다.

세계 최고의 암호 화폐 교환으로서 Binance는 항상 사용자에게 안전하고 편리한 거래 경험을 제공하기 위해 최선을 다하고 있습니다. 시간이 지남에 따라 Binance는 사용자의 변화하는 요구를 충족시키기 위해 플랫폼 기능과 사용자 인터페이스를 지속적으로 최적화했습니다. 2025 년 Binance는 사용자 경험을 더욱 향상시키기위한 새로운 로그인 포털을 시작했습니다.
