Maison >cadre php >PensezPHP >Comment faire une pagination dans thinkphp5

Comment faire une pagination dans thinkphp5

爱喝马黛茶的安东尼
爱喝马黛茶的安东尼original
2019-08-26 11:53:303084parcourir

Comment faire une pagination dans thinkphp5

En fait, le contenu de la pagination elle-même n'est pas grand-chose. Cependant, cela semble assez ennuyeux en ce qui concerne les problèmes de style. J'ai donc trouvé la classe de pagination et j'y ai jeté un œil. Parlons de la structure générale. Si vous devez modifier le style de la page, vous pouvez le modifier vous-même. Il est préférable de reculer à l'avance pour éviter les accidents.

Le premier est l'appel de pagination. L'appel à tp5 est relativement simple :

$mod = new \app\index\model\Blogmsg();
$mo = $mod->paginate(1,14);
$this->assign('list', $mo);
// 渲染模板输出
return $this->fetch('list');
//模板方面
<div>
<ul>
{volist name=&#39;list&#39; id=&#39;user&#39;}
<li> {$user.nickname}</li>
{/volist}
</ul>
</div>
{$list->render()}

Le premier paramètre de la fonction est le nombre de pages affichées sur chaque page, et le deuxième paramètre est le nombre de pages affichées. de nombreuses pages sont affichées au total.

Recommandations associées : "Tutoriel ThinkPHP"

(À l'origine, il y a 10 pages, mais vous n'écrivez que 5 pages, donc les pages 6 à 10 ne seront pas affichées, mais l'adresse Vous pouvez toujours accéder à ce paramètre dans la colonne pour obtenir le contenu correspondant)

Comment faire une pagination dans thinkphp5

La valeur par défaut est cet effet. Mais il s'agit d'un effet uniquement disponible sous le modèle bootstrap. Nommé spécifiquement en fonction des caractéristiques du bootstrap.

En d’autres termes, sous d’autres modèles, il ne s’agit que d’un simple numéro.

L'emplacement du fichier d'échange est dans thinkphplibrarythinkpaginator.
Il existe une version originale du style de pagination dans le pilote. La modification directe n'est pas propice à une maintenance ultérieure. Et tp5 vous offre également une méthode de modification très pratique. Copiez et collez les fichiers sources dans le dossier et renommez-les. Changez ensuite le mot "Bootstrap" dans la classe Bootstrap étend Paginator au nom du fichier. Accédez ensuite à config.php pour trouver la configuration liée à la pagination.

'type' => 'bootstrap', remplacez-le par votre nom de fichier. Vous pouvez l'appeler directement.

Je vais énumérer quelques noms de fonctions impliqués dans les styles et parler brièvement du sens de leur existence.

render() restitue la pagination. La langue vernaculaire est le corps principal de cette classe de pagination.

return sprintf(
  &#39;<ul class="pagination">%s %s %s</ul>&#39;,
  $this->getPreviousButton(),
  $this->getLinks(),
  $this->getNextButton()
);

Il s'agit du style CSS, qui peut être remplacé selon vos propres besoins.

Le numéro de page lui-même ne comporte aucun élément de première et de dernière page. (Mais la fonction vous fournit la valeur de la dernière page)
Vous pouvez la remplir vous-même. Copiez simplement getNextButton() et apportez les modifications pertinentes.

Vous verrez deux autres fonctions dans la fonction getNextButton() :

getAvailablePageWrapper(url,page) et getDisabledTextWrapper($text).

La fonction de rendu peut désormais être comprise comme une boîte, et ces deux fonctions peuvent être comprises comme des boutons. Si vous souhaitez changer de style, faites-le ici. Quiconque peut le faire n’aura pas vraiment de problème.

getLinks() est au milieu. En gros, vous pouvez comprendre la signification générale en regardant le code. Fondamentalement, vous pouvez partir de ces endroits lors de la modification de la pagination.

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:
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