codeigniter中测试通过的分页类示例_php实例
通用分页类(以Codeigniter测试)
page_list.php
/**
* 分页类
*/
class Page_list {
/**
* 总数据
* @var int
*/
private $total;
/**
* 每页显示数据
* @var int
*/
private $size;
/**
* 当前页数
* @var int
*/
private $page;
/**
* 页数列表左右页数
* @var int
*/
private $len;
/**
* 总页数
* @var int
*/
private $page_total;
/**
* 页码列表
* @var array
*/
private $page_list;
/**
* 基准地址
* @var string
*/
private $base_url;
/**
* 替换标志
* @var string
*/
private $place;
/**
* 分页样式
* @var string
*/
private $style;
/**
* 构造函数
*
* @param array $config 配置数组
*/
public function __construct($config = array()){
// 初始化默认值
$this->total = 0;
$this->size = 20;
$this->page = 1;
$this->len = 4;
$this->page_total = 1;
$this->page_list = array();
$this->base_url = '?page=-page-';
$this->place = '-page-';
$this->style = $this->get_default_style();
$this->initialize($config);
}
/**
* 初始化分页
*
* @param array $config 配置数组
*/
public function initialize($config = array()){
// 取得配置值
if(is_array($config)){
if(array_key_exists('total', $config)) $this->total = @intval($config['total']);
if(array_key_exists('size', $config)) $this->size = @intval($config['size']);
if(array_key_exists('page', $config)) $this->page = @intval($config['page']);
if(array_key_exists('len', $config)) $this->len = @intval($config['len']);
if(array_key_exists('base_url', $config)) $this->base_url = @strval($config['base_url']);
if(array_key_exists('place', $config)) $this->place = @strval($config['place']);
if(array_key_exists('style', $config)) $this->style = @strval($config['style']);
}
// 修正值
if($this->totaltotal = 0;
if($this->sizesize = 20;
if($this->pagepage = 1;
if($this->lenlen = 4;
// 执行分页算法
$this->page_total = ceil($this->total/$this->size);
if($this->page_totalpage_total = 1;
if($this->page>$this->page_total) $this->page = $this->page_total;
if($this->page-$this->len>=1){
for($i=$this->len; $i>0; $i--){
$this->page_list[] = $this->page - $i;
}
}else{
for($i=1; $ipage; $i++){
$this->page_list[] = $i;
}
}
$this->page_list[] = $this->page;
if($this->page+$this->lenpage_total){
for($i=1; $ilen; $i++){
$this->page_list[] = $this->page + $i;
}
}else{
for($i=$this->page+1; $ipage_total; $i++){
$this->page_list[] = $i;
}
}
}
/**
* 默认分页样式
*
* @return string
*/
public function get_default_style(){
$style = '';
return $style;
}
/**
* 是否是第一页
*
* @return bool
*/
public function is_first_page(){
return $this->page == 1;
}
/**
* 获取第一页页码
*
* @return int
*/
public function get_first_page(){
return 1;
}
/**
* 是否是最后一页
*
* @return bool
*/
public function is_last_page(){
return $this->page == $this->page_total;
}
/**
* 获取最后一页页码
*
* @return int
*/
public function get_last_page(){
return $this->page_total;
}
/**
* 是否存在上一页
*
* @return bool
*/
public function has_prev_page(){
return $this->page > 1;
}
/**
* 是否存在下一页
*
* @return bool
*/
public function has_next_page(){
return $this->page page_total;
}
/**
* 获取上一页页码
*
* @return int
*/
public function get_prev_page(){
return $this->has_prev_page() ? $this->page - 1 : $this->page;
}
/**
* 获取下一页页码
*
* @return int
*/
public function get_next_page(){
return $this->has_next_page() ? $this->page + 1 : $this->page;
}
/**
* 获取当前页页码
*
* @return int
*/
public function get_curr_page(){
return $this->page;
}
/**
* 获取总数据数
*
* @return int
*/
public function get_total(){
return $this->total;
}
/**
* 获取每页显示数据数
*
* @return int
*/
public function get_size(){
return $this->size;
}
/**
* 获取总页数
*
* @return int
*/
public function get_total_page(){
return $this->page_total;
}
/**
* 构建并返回分页代码
*
* @param string $base_url 基准地址
* @param string $place 替换标志
* @param string $style 分页样式
* @return string 分页HTML代码
*/
public function display($base_url = '', $place = '', $style = ''){
if($base_url==='') $base_url = $this->base_url;
if($place==='') $place = $this->place;
if($style==='') $style = $this->style;
$str = $style.'
if( ! $this->is_first_page()){
$str .= '首页';
}
if($this->has_prev_page()){
$str .= '上一页';
}
foreach($this->page_list as $v){
if($v==$this->page){
$str .= '' . $v . '';
}else{
$str .= ''.$v.'';
}
}
if($this->has_next_page()){
$str .= '下一页';
}
if( ! $this->is_last_page()){
$str .= '尾页';
}
$str .= '
return $str;
}
}
?>
/application/view/pagelist.php
class Pagelist extends CI_Controller {
public function page(){
$this->load->helper('url');
$page = $this->input->get('page');
$page = @intval($page);
if($page $this->load->library('page_list',array('total'=>10000,'size'=>16,'page'=>$page));
$pl = $this->page_list->display(site_url('pagelist/page/page/-page-'));
$this->load->view('pagelist', array('pl' => $pl));
}
}
?>
/application/view/pagelist.php

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Comment implémenter un middleware personnalisé dans CodeIgniter Introduction : Dans le développement Web moderne, le middleware joue un rôle essentiel dans l'application. Ils peuvent être utilisés pour exécuter une logique de traitement partagé avant ou après que la demande atteigne le contrôleur. CodeIgniter, en tant que framework PHP populaire, prend également en charge l'utilisation de middleware. Cet article explique comment implémenter un middleware personnalisé dans CodeIgniter et fournit un exemple de code simple. Présentation du middleware : le middleware est une sorte de requête

Middleware CodeIgniter : accélère la réactivité des applications et le rendu des pages Présentation : À mesure que les applications Web continuent de gagner en complexité et en interactivité, les développeurs doivent utiliser des solutions plus efficaces et évolutives pour améliorer les performances et la réactivité des applications. CodeIgniter (CI) est un framework léger basé sur PHP qui fournit de nombreuses fonctionnalités utiles, dont le middleware. Le middleware est une série de tâches effectuées avant ou après que la demande parvienne au contrôleur. Cet article explique comment utiliser

Introduction à la méthode d'utilisation du générateur de requêtes de base de données (QueryBuilder) dans le framework CodeIgniter : CodeIgniter est un framework PHP léger qui fournit de nombreux outils et bibliothèques puissants pour faciliter les développeurs dans le développement d'applications Web. L'une des fonctionnalités les plus impressionnantes est le générateur de requêtes de base de données (QueryBuilder), qui fournit un moyen concis et puissant de créer et d'exécuter des instructions de requête de base de données. Cet article expliquera comment utiliser Co

Avec le développement de l’Internet mobile, la messagerie instantanée est devenue de plus en plus importante et populaire. Pour de nombreuses entreprises, le chat en direct s’apparente davantage à un service de communication, offrant une méthode de communication pratique permettant de résoudre rapidement et efficacement les problèmes commerciaux. Sur cette base, cet article présentera comment utiliser le framework PHP CodeIgniter pour développer une application de chat en temps réel. Comprendre le framework CodeIgniter CodeIgniter est un framework PHP léger qui fournit une série d'outils et de bibliothèques simples pour aider rapidement les développeurs

Middleware CodeIgniter : fournit des fonctions sécurisées de téléchargement et de téléchargement de fichiers. Introduction : Le téléchargement et le téléchargement de fichiers sont des fonctions très courantes lors du développement d'applications Web. Cependant, pour des raisons de sécurité, la gestion des téléchargements et des téléchargements de fichiers nécessite souvent des mesures de sécurité supplémentaires. CodeIgniter est un framework PHP populaire qui fournit une multitude d'outils et de bibliothèques pour aider les développeurs à créer des applications Web sécurisées et fiables. Cet article explique comment utiliser le middleware CodeIgniter pour implémenter des fichiers sécurisés.

À mesure que les applications Web continuent d’évoluer, il est important de développer des applications plus rapidement et plus efficacement. Et comme l'API RESTful est largement utilisée dans les applications Web, il est nécessaire que les développeurs comprennent comment créer et implémenter l'API RESTful. Dans cet article, nous verrons comment implémenter le modèle MVC et l'API RESTful à l'aide du framework CodeIgniter. Introduction au modèle MVC MVC (Model-Vie

CodeIgniter est un framework PHP léger qui utilise l'architecture MVC pour prendre en charge un développement rapide et simplifier les tâches courantes. CodeIgniter5 est la dernière version du framework et offre de nombreuses nouvelles fonctionnalités et améliorations. Cet article explique comment utiliser le framework CodeIgniter5 pour créer une application Web simple. Étape 1 : Installer CodeIgniter5 Le téléchargement et l'installation de CodeIgniter5 sont très simples, suivez simplement ces étapes : Téléchargez la dernière version

À l'ère d'Internet d'aujourd'hui, un site Web apprécié des utilisateurs doit disposer d'une interface frontale simple et claire et d'un système de gestion back-end puissant, et le framework PHP CodeIgniter est un excellent framework qui permet aux développeurs de créer rapidement un back-end. système de gestion. CodeIgniter a les caractéristiques d'une légèreté, d'une grande efficacité et d'une expansion facile. Cet article s'adressera aux débutants et expliquera en détail comment créer rapidement un système de gestion backend via ce cadre. 1. Installation et configuration L'installation de PHPCodeIgniter est basée sur PHP
