Maison cadre php PensezPHP Comment implémenter la fonction de pagination de ThinkPHP6

Comment implémenter la fonction de pagination de ThinkPHP6

Jun 20, 2023 pm 09:15 PM
thinkphp 实现 分页功能

ThinkPHP est un framework de développement PHP très populaire, et sa dernière version, ThinkPHP6, a été grandement améliorée en termes de performances et de facilité d'utilisation. La fonction de pagination est une fonction très courante dans le développement Web, et ThinkPHP6 fournit également une méthode de pagination très pratique. Cet article expliquera comment implémenter la fonction de pagination de ThinkPHP6.

1. Comprendre la fonction de pagination

Dans les applications Web, lorsque l'ensemble de données est très volumineux, l'affichage de tous les résultats sur une seule page entraînera un chargement trop rapide de la page. lent et peu pratique pour les utilisateurs d’afficher et de gérer les données. La fonction de pagination consiste à diviser l'ensemble de données en plusieurs pages, et chaque page n'affiche qu'une partie des données. Cela peut réduire considérablement le temps de chargement des pages, tout en permettant aux utilisateurs de parcourir et de gérer plus facilement les données.

2. Implémentez la fonction de pagination de ThinkPHP6

ThinkPHP6 fournit une méthode de pagination très pratique, qui peut être implémentée en quelques étapes simples.

  1. Installer le composant Pagination

ThinkPHP6 fournit un composant Pagination, vous devez ajouter le code suivant au fichier composer.json : #🎜🎜 #

"require": {
    "topthink/think-pagination": "^1.0"
}
Copier après la connexion

Ensuite, utilisez la commande composer update pour installer le composant.

    composer update安装组件。

    1. 在控制器中使用分页

    在控制器中使用分页的步骤如下:

    首先,获取数据表中的记录总数。使用以下代码:

    $total = Db::name('user')->count();
    Copier après la connexion

    其中,Db是ThinkPHP6中的数据库操作类,name('user')表示获取user表的数据,count()表示获取数据总数。

    接下来,设置每页显示的记录数和当前页码数。使用以下代码:

    $pageSize = 10;   //每页显示10条记录
    $pageNo = 1;      //默认显示第1页
    if (!empty($_GET['page'])) {
        $pageNo = intval($_GET['page']);   //获取当前页码数
    }
    Copier après la connexion

    其中,intval()函数用于将字符串转换为整数。

    接着,根据每页显示的记录数和当前页码数计算出需要显示的记录范围。使用以下代码:

    $offset = ($pageNo - 1) * $pageSize;
    $rows = Db::name('user')->limit($offset, $pageSize)->select();
    Copier après la connexion

    其中,limit()方法用于限制查询结果的范围,第一个参数表示偏移量,第二个参数表示获取的记录数。

    最后,将获取的记录传递给视图,并调用Pagination组件进行分页显示。使用以下代码:

    $this->assign('rows', $rows);
    $this->assign('total', $total);
    $this->assign('pageSize', $pageSize);
    $this->assign('pageNo', $pageNo);
    return $this->fetch()->extend('pagination');
    Copier après la connexion

    其中,assign()方法用于传递变量给模板,fetch()方法用于调用模板文件,extend('pagination')表示使用Pagination组件进行分页显示。

    1. 在视图中实现分页

    在视图文件中实现分页的步骤如下:

    首先,在页面底部显示分页栏。使用以下代码:

    <div class="pagination">
        {$page->render()}
    </div>
    Copier après la connexion

    其中,$page表示Pagination实例,render()方法用于生成分页HTML代码。

    接着,设置分页样式。使用以下代码:

        hinkacadeView::getPager()->setConfig('prev', '上一页');
        hinkacadeView::getPager()->setConfig('next', '下一页');
        hinkacadeView::getPager()->setConfig('theme', '%totalRow% %header% %upPage% %downPage% %first% %prePage% %linkPage% %nextPage% %end%');
    Copier après la connexion

    其中,setConfig()方法用于设置分页样式。%totalRow%表示显示总记录数,%header%表示当前页码,%upPage%表示上一页,%downPage%表示下一页,%first%表示第一页,%prePage%表示上一组页码,%linkPage%表示当前页码组,%nextPage%表示下一组页码,%end%表示最后一页。

    注意:在设置分页样式之前,需要调用use thinkPaginator;Utilisation de la pagination dans le contrôleur

    1. Les étapes pour utiliser la pagination dans le contrôleur sont les suivantes :
    2. # 🎜 🎜#Tout d'abord, obtenez le nombre total d'enregistrements dans le tableau de données. Utilisez le code suivant :
    use thinkDb;
    use thinkPaginator;
    
    class UserController extends Controller
    {
        public function index()
        {
            $total = Db::name('user')->count();
            $pageSize = 10;   //每页显示10条记录
            $pageNo = 1;      //默认显示第1页
            if (!empty($_GET['page'])) {
                $pageNo = intval($_GET['page']);   //获取当前页码数
            }
            $offset = ($pageNo - 1) * $pageSize;
            $rows = Db::name('user')->limit($offset, $pageSize)->select();
            $this->assign('rows', $rows);
            $this->assign('total', $total);
            $this->assign('pageSize', $pageSize);
            $this->assign('pageNo', $pageNo);
            Paginator::useBootstrap();
            Paginator::currentPageResolver(function () use ($pageNo) {
                return $pageNo;
            });
            Paginator::pagination($total, $pageSize, $pageNo);
                hinkacadeView::getPager()->setConfig('prev', '上一页');
                hinkacadeView::getPager()->setConfig('next', '下一页');
                hinkacadeView::getPager()->setConfig('theme', '%totalRow% %header% %upPage% %downPage% %first% %prePage% %linkPage% %nextPage% %end%');
            return $this->fetch()->extend('pagination');
        }
    }
    Copier après la connexion

    Parmi eux, Db est la classe d'opération de base de données dans ThinkPHP6, name('user') signifie obtenir les données de la table utilisateur et count() signifie obtenir le nombre total de données.

    Ensuite, définissez le nombre d'enregistrements affichés sur chaque page et le numéro de la page actuelle. Utilisez le code suivant :

    rrreee

    Parmi eux, la fonction intval() est utilisée pour convertir une chaîne en entier.

    #🎜🎜#Ensuite, calculez la plage d'enregistrements qui doit être affichée en fonction du nombre d'enregistrements affichés sur chaque page et du numéro de page actuel. Utilisez le code suivant : #🎜🎜#rrreee#🎜🎜#Parmi eux, la méthode limit() est utilisée pour limiter la plage des résultats de la requête. Le premier paramètre représente le décalage et le deuxième paramètre représente le nombre d'enregistrements obtenus. #🎜🎜##🎜🎜#Enfin, transmettez les enregistrements obtenus à la vue et appelez le composant Pagination pour l'affichage de la pagination. Utilisez le code suivant : #🎜🎜#rrreee#🎜🎜#Parmi eux, la méthode assign() est utilisée pour transmettre des variables au modèle, la méthode fetch() est utilisée pour appeler le fichier modèle, et extend('pagination' ) signifie utiliser le composant Pagination pour l'affichage de la pagination. #🎜🎜#
      #🎜🎜# Implémenter la pagination dans la vue #🎜🎜##🎜🎜##🎜🎜#Les étapes pour implémenter la pagination dans le fichier de vue sont les suivantes : #🎜🎜# #🎜🎜 #Tout d'abord, affichez la barre de pagination en bas de la page. Utilisez le code suivant : #🎜🎜#rrreee#🎜🎜#Où, $page représente l'instance de Pagination et la méthode render() est utilisée pour générer du code HTML de pagination. #🎜🎜##🎜🎜#Ensuite, définissez le style de pagination. Utilisez le code suivant : #🎜🎜#rrreee#🎜🎜#Parmi eux, la méthode setConfig() est utilisée pour définir le style de pagination. %totalRow% représente le nombre total d'enregistrements affichés, %header% représente le numéro de la page actuelle, %upPage% représente la page précédente, %downPage% représente la page suivante, %first% représente la première page, %prePage% représente la précédente numéro de page, % linkPage% représente le groupe de numéros de page actuel, %nextPage% représente le groupe suivant de numéros de page et %end% représente la dernière page. #🎜🎜##🎜🎜#Remarque : Avant de définir le style de pagination, vous devez appeler l'espace de noms use thinkPaginator;. #🎜🎜##🎜🎜##🎜🎜#Exemple de code complet#🎜🎜##🎜🎜##🎜🎜#Ce qui suit est un exemple de code complet pour implémenter la fonction de pagination de ThinkPHP6 : #🎜🎜#rrreee#🎜🎜 # 3. Résumé#🎜🎜##🎜🎜#Grâce aux étapes ci-dessus, nous avons implémenté avec succès la fonction de pagination de ThinkPHP6. Je pense que grâce à l'introduction de cet article, les lecteurs peuvent facilement ajouter des fonctions de pagination à leurs sites Web et améliorer l'expérience utilisateur du site Web. #🎜🎜#

    Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

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

AI Clothes Remover

AI Clothes Remover

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

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
4 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
WWE 2K25: Comment déverrouiller tout dans Myrise
1 Il y a quelques mois By 尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

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

Comment mettre en œuvre la double connexion WeChat sur les téléphones mobiles Huawei ? Comment mettre en œuvre la double connexion WeChat sur les téléphones mobiles Huawei ? Mar 24, 2024 am 11:27 AM

Comment mettre en œuvre la double connexion WeChat sur les téléphones mobiles Huawei ? Avec l’essor des réseaux sociaux, WeChat est devenu l’un des outils de communication indispensables dans la vie quotidienne des gens. Cependant, de nombreuses personnes peuvent rencontrer un problème : se connecter à plusieurs comptes WeChat en même temps sur le même téléphone mobile. Pour les utilisateurs de téléphones mobiles Huawei, il n'est pas difficile d'obtenir une double connexion WeChat. Cet article explique comment obtenir une double connexion WeChat sur les téléphones mobiles Huawei. Tout d'abord, le système EMUI fourni avec les téléphones mobiles Huawei offre une fonction très pratique : l'ouverture d'une double application. Grâce à la fonction de double ouverture de l'application, les utilisateurs peuvent simultanément

Comment exécuter le projet thinkphp Comment exécuter le projet thinkphp Apr 09, 2024 pm 05:33 PM

Pour exécuter le projet ThinkPHP, vous devez : installer Composer ; utiliser Composer pour créer le projet ; entrer dans le répertoire du projet et exécuter php bin/console serve ; visiter http://localhost:8000 pour afficher la page d'accueil.

Il existe plusieurs versions de thinkphp Il existe plusieurs versions de thinkphp Apr 09, 2024 pm 06:09 PM

ThinkPHP dispose de plusieurs versions conçues pour différentes versions de PHP. Les versions majeures incluent 3.2, 5.0, 5.1 et 6.0, tandis que les versions mineures sont utilisées pour corriger les bogues et fournir de nouvelles fonctionnalités. La dernière version stable est ThinkPHP 6.0.16. Lorsque vous choisissez une version, tenez compte de la version PHP, des exigences en matière de fonctionnalités et du support de la communauté. Il est recommandé d'utiliser la dernière version stable pour de meilleures performances et une meilleure assistance.

Comment exécuter thinkphp Comment exécuter thinkphp Apr 09, 2024 pm 05:39 PM

Étapes pour exécuter ThinkPHP Framework localement : Téléchargez et décompressez ThinkPHP Framework dans un répertoire local. Créez un hôte virtuel (facultatif) pointant vers le répertoire racine ThinkPHP. Configurez les paramètres de connexion à la base de données. Démarrez le serveur Web. Initialisez l'application ThinkPHP. Accédez à l'URL de l'application ThinkPHP et exécutez-la.

Guide de programmation PHP : méthodes pour implémenter la séquence de Fibonacci Guide de programmation PHP : méthodes pour implémenter la séquence de Fibonacci Mar 20, 2024 pm 04:54 PM

Le langage de programmation PHP est un outil puissant pour le développement Web, capable de prendre en charge une variété de logiques et d'algorithmes de programmation différents. Parmi eux, l’implémentation de la séquence de Fibonacci est un problème de programmation courant et classique. Dans cet article, nous présenterons comment utiliser le langage de programmation PHP pour implémenter la séquence de Fibonacci et joindrons des exemples de code spécifiques. La suite de Fibonacci est une suite mathématique définie comme suit : le premier et le deuxième élément de la suite valent 1, et à partir du troisième élément, la valeur de chaque élément est égale à la somme des deux éléments précédents. Les premiers éléments de la séquence

Comment implémenter la fonction de clonage WeChat sur les téléphones mobiles Huawei Comment implémenter la fonction de clonage WeChat sur les téléphones mobiles Huawei Mar 24, 2024 pm 06:03 PM

Comment mettre en œuvre la fonction de clonage WeChat sur les téléphones mobiles Huawei Avec la popularité des logiciels sociaux et l'importance croissante accordée à la confidentialité et à la sécurité, la fonction de clonage WeChat est progressivement devenue le centre d'attention. La fonction de clonage WeChat peut aider les utilisateurs à se connecter simultanément à plusieurs comptes WeChat sur le même téléphone mobile, ce qui facilite la gestion et l'utilisation. Il n'est pas difficile de mettre en œuvre la fonction de clonage WeChat sur les téléphones mobiles Huawei. Il vous suffit de suivre les étapes suivantes. Étape 1 : Assurez-vous que la version du système de téléphonie mobile et la version de WeChat répondent aux exigences. Tout d'abord, assurez-vous que la version de votre système de téléphonie mobile Huawei a été mise à jour vers la dernière version, ainsi que l'application WeChat.

Lequel est le meilleur, Laravel ou thinkphp ? Lequel est le meilleur, Laravel ou thinkphp ? Apr 09, 2024 pm 03:18 PM

Comparaison des performances des frameworks Laravel et ThinkPHP : ThinkPHP fonctionne généralement mieux que Laravel, en se concentrant sur l'optimisation et la mise en cache. Laravel fonctionne bien, mais pour les applications complexes, ThinkPHP peut être mieux adapté.

Comment installer thinkphp Comment installer thinkphp Apr 09, 2024 pm 05:42 PM

Étapes d'installation de ThinkPHP : Préparez les environnements PHP, Composer et MySQL. Créez des projets à l'aide de Composer. Installez le framework ThinkPHP et ses dépendances. Configurez la connexion à la base de données. Générez le code de l'application. Lancez l'application et visitez http://localhost:8000.

See all articles