当前位置: 首页 > news >正文

泰安祥奕网络网站建设模板phpmysql网站开发全程实例 pdf

泰安祥奕网络网站建设模板,phpmysql网站开发全程实例 pdf,北京网站建设1000zhu,需要多少钱呢?前言#xff1a;说明下我们本篇文章都要讲哪些内容分页的使用#xff0c;一步一步的教你怎么做分页类LinkPager和Pagination都可以自定义哪些属性分页类LinkPager如何扩展成我们所需要的第一步#xff0c;我们来看看yii2自带的分页类该如何去使用#xff1f;1、controller …前言说明下我们本篇文章都要讲哪些内容分页的使用一步一步的教你怎么做分页类LinkPager和Pagination都可以自定义哪些属性分页类LinkPager如何扩展成我们所需要的第一步我们来看看yii2自带的分页类该如何去使用1、controller actionuse yii\data\Pagination;$query Article::find()-where([status 1]);$countQuery clone $query;$pages new Pagination([totalCount $countQuery-count()]);$models $query-offset($pages-offset)-limit($pages-limit)-all();return $this-render(index, [models $models,pages $pages,]);2、Viewuse yii\widgets\LinkPager;//循环展示数据foreach ($models as $model) {// ......}//显示分页页码echo LinkPager::widget([pagination $pages,])代码基本上可以完全拷贝修改部分数据即可相信大多数人都是看得懂的。我们接下来看第二步自带的分页类都可以定义哪些属性首先我们说说LinkPager组件.pagination参数必填这个是我们Pagination类的实例默认分页类是下面这个样子的.上下页按钮以及10个按钮首先我们把上下页的按钮修改成中文 LinkPager::widget([pagination $pages,nextPageLabel 下一页,prevPageLabel 上一页,]); ?如果你不想要显示上下页可以将prevPageLabel和nextPageLabel设置为false LinkPager::widget([pagination $pages,nextPageLabel false,prevPageLabel false,]); ?默认不显示首页也尾页如果你需要可以这样设置 LinkPager::widget([pagination $pages,firstPageLabel 首页,lastPageLabel 尾页,]); ?如果你的数据过少不够2页默认不显示分页如果你需要设置hideOnSinglePagefalse即可 LinkPager::widget([pagination $pages,hideOnSinglePage false,]); ?默认显示的页码为10页可以设置maxButtonCount为你想要展示的页数 LinkPager::widget([pagination $pages,maxButtonCount 5,]); ?有些人不喜欢默认的样式想要分页带上自己的样式可以设置options不要忘了自行实现pre,next,disabled等样式 LinkPager::widget([pagination $pages,options [class m-pagination],]); ?接下来我们谈谈Pagination组件默认的分页路由是下面这样子的我们看看能做点什么/controller/action?page2per-page20首先我们是必须要指定总条数totalCount的没这个参数分页也是没办法实现的$pages new Pagination([totalCount $totalCount,]);默认分页的数量是20你可以设置pageSize为你想要的$pages new Pagination([totalCount $totalCount,pageSize 5,]);从上面的分页路由我们可以看到默认带的有每页的数量per-page 如果你不想显示该参数设置pageSizeParamfalse就好$pages new Pagination([totalCount $totalCount,pageSizeParam false,]);我们也可以看到默认的页面取决于参数page,如果你想改变该参数为p,设置pageParamp就好$pages new Pagination([totalCount $totalCount,pageParam p,]);如果你的分页存在于首页相信你肯定想要/?p1而不是/site/index?p1我们看看怎么隐藏掉路由$pages new Pagination([totalCount $totalCount,route false,]);可能你会发现分页类Pagination有一个bug,假如我们只有1页的数据但是手动更改地址栏的page20的时候也会显示page1的数据当然这在大部分接口API中就很让人厌烦。但是这并非bug,而是一种友好的验证。设置validatePagefalse即可避免掉该问题$pages new Pagination([totalCount $totalCount,validatePage false, ]);最后我们整点新花样扩展下他这个自带的分页别一看见扩展俩字下面的就直接不看了只有自己学会扩展了以后才能越来越强怎么个扩展法呢我们把分页组件改为上下页那种具体参考下图做个对比吧接下来我们就来看看右侧的效果具体是如何通过扩展LinkPager组件实现的。源码分享给大家喜欢的拿去自己研究即可。namespace frontend\components;use yii\widgets\LinkPager;use yii\helpers\Html;class MLinkPager extends LinkPager{public $prevPageLabel ;public $nextPageLabel ;public $currentCountPageLabel 第 {currentPage} 页 / 共 {countPage} 页;public $currentCountPageClass page-number;public $hideOnSinglePage false;public function init () {parent::init();}public function run () {$pageCount $this-pagination-getPageCount();if ($pageCount 2 $this-hideOnSinglePage) {return ;}$buttons [];$currentPage $this-pagination-getPage();// prev pageif ($this-prevPageLabel ! false) {if (($page $currentPage - 1) 0) {$page 0;}$buttons[] $this-renderPageButton($this-prevPageLabel, $page, $this-prevPageCssClass, $currentPage 0, false);}// current page / count pageif ($this-currentCountPageLabel ! false $pageCount) {$currentCountPageLabel str_replace([{currentPage}, {countPage}], [$currentPage1, $pageCount], $this-currentCountPageLabel);$buttons[] Html::tag(span, $currentCountPageLabel, array(class $this-currentCountPageClass));}// next pageif ($this-nextPageLabel ! false) {if (($page $currentPage 1) $pageCount - 1) {$page $pageCount - 1;}$buttons[] $this-renderPageButton($this-nextPageLabel, $page, $this-nextPageCssClass, $currentPage $pageCount - 1, false);}return Html::tag(nav, implode(\n, $buttons), $this-options);}protected function renderPageButton($label, $page, $class, $disabled, $active){$options [class empty($class) ? $this-pageCssClass : $class];if ($active) {Html::addCssClass($options, $this-activePageCssClass);}if ($disabled) {return false;}$linkOptions $this-linkOptions;$linkOptions $options;$linkOptions[data-page] $page;return Html::a($label, $this-pagination-createUrl($page), $linkOptions);}}如此一来我们调用MLinkPager实现分页效果像下面这样即可use frontend\components\MLinkPager; MLinkPager::widget([pagination $pages,]); ?当然自己扩展的分页组建重在教大家如何去实现分页扩展难免会有很多问题如果你有好的意见或者方法直接给我留言咱们共同沟通交流。
http://www.zqtcl.cn/news/904032/

相关文章:

  • 东丽做网站公司帮做网站的公司
  • 网站的icon图标做多大验证wordpress
  • html制作音乐网站代码已经买了域名怎么做网站
  • 网站做收付款接口山东专业的制作网站
  • 龙岗建设高端网站如何建立网站会员系统吗
  • 中国建设银行的网站色彩wordpress 图片采集器
  • 渭南做网站价格江西省城乡住房建设部网站
  • 个人网站可以做充值安徽建设厅网站首页
  • 技术支持 东莞网站建设石材小企业网站建设查询
  • 政务公开网站建设的亮点和建议wordpress注册怎么设置密码
  • 外贸有哪些网站成都网络营销搜索推广优势
  • 国外mod大型网站财税公司
  • 一个很好的个人网站开发做一个简单网页多少钱
  • 东莞在哪里学网站建设网站建设团队与分工
  • 网站功能插件昆明网站建设技术研发中心
  • 网站开发培训中心 市桥移动端ui
  • 高碑店地区网站建设上海排名十大装潢公司
  • 无锡自助建站网站还是新能源专业好
  • pc 手机网站 微站如何建设与维护网站
  • 大学生兼职网站开发毕设论文杭州网络排名优化
  • 做教育机器网站网站建设的步骤图
  • 桔子建站是什么平台郑州公司注册网上核名
  • 网站开发技能有哪些网站建设艾金手指科杰
  • 网站建设挂什么费用网站建设学那些课
  • 网站定位与功能分析在互联网公司做网站
  • 安阳网站建设兼职做网站推广有哪些公司
  • 网站制作的一般过程怎么用手机搭建网站
  • 备案 网站名称 怎么改深圳建网站公司
  • html 企业网站模板网站策划书免费
  • 网站建设销售ppt拖拽建站系统源码