Symfony2 KNP PAGINATOR for php 模板
Posted
技术标签:
【中文标题】Symfony2 KNP PAGINATOR for php 模板【英文标题】:Symfony2 KNP PAGINATOR for php template 【发布时间】:2014-06-20 15:33:04 【问题描述】:我安装了 KNP Paginator 包来处理分页。 它适用于 twig 模板,但我使用的是 php 模板。
在 php 中有什么类似的?
knp_pagination_render(entities)
实体包含来自数据库的数据。
【问题讨论】:
【参考方案1】:in controller:
<?php
$paginator = $this->get('knp_paginator');
$pagination = $paginator->paginate($target, $page);
$pagination->setTemplate('MyBundle:Pagination:pagination.html.php');
?>
and template:
<?php if ($pageCount > 1): ?>
<div class="pagination">
<?php if (isset($first) && $current != $first): ?>
<a href="<?php echo $view->escape($view['router']->generate($route, \array_merge($query, [$pageParameterName => $first]))); ?>">«</a>
<?php endif; ?>
<?php if (isset($previous)): ?>
<a href="<?php echo $view->escape($view['router']->generate($route,\array_merge($query, [$pageParameterName => $previous]))); ?>" rel="prev">‹</a>
<?php endif; ?>
<?php foreach ($pagesInRange as $page): ?>
<?php if ($page != $current): ?>
<a href="<?php echo $view->escape($view['router']->generate($route, \array_merge($query, [$pageParameterName => $page]))); ?>"><?php echo $page; ?></a>
<?php else: ?>
<?php echo $page; ?></span>
<?php endif; ?>
<?php endforeach; ?>
<?php if (isset($next)): ?>
<a href="<?php echo $view->escape($view['router']->generate($route, \array_merge($query, [$pageParameterName => $next]))); ?>" rel="next">›</a>
<?php endif; ?>
<?php if (isset($last) && $current != $last): ?>
<a href="<?php echo $view->escape($view['router']->generate($route, \array_merge($query, [$pageParameterName => $last]))); ?>">»</a>
<?php endif; ?>
</div>
<?php endif; ?>
【讨论】:
以上是关于Symfony2 KNP PAGINATOR for php 模板的主要内容,如果未能解决你的问题,请参考以下文章