简单的php多页码分页

  

之前每次遇到分页,总是得自己写,觉得挺繁琐的,所以本着通用的原则,写了一个分页的方法,特此记录。


,,目前此分页支持静态化地址分页和无链接地址时的ajax分页(但是js得自己写):


,,支持的静态地址如下:www.example.com/xxx-xxx-p1-xxxx-xx.html

,,,,其他形式静态化需根据自己情况进行改写


,,支持ajax方式分页时,$链接参数为空,但提供了pid和optype,其中pid用于获取该页码页数,optype用于一个页面存在多个分页时区分当前触发动作属于哪个分页逻辑



/* * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * *   *   *获取页码   *   **********************************************************   *   * @params字符串$链接链接地址(链接为空时可以用ajax翻页)   *   * @params int intPage美元当前页数   *   * @params int intTotal美元总页数   *   * @params int intSize美元要显示的页数个数   *   美元* @params字符串类型链接种类(多个翻页用于区分翻页区域)   *   **********************************************************   *   * @return数组   */私有函数formatPage(链接=" ",intPage美元,美元intTotal, intSize=3美元,美元type=" ")   {   strPage美元=' & lt; div类=" g_serpage clearfix“在”;   如果($ intTotal祝辞0)   {   如果($ intPage祝辞1)   strPage美元。=$链接!=" ?”& lt; a href="的.preg_replace ("/p (\ d +)/?“p”。(intPage-1美元),链接)美元。”“祝辞,lt;, lt;上一页& lt;/a>”:“& lt; optype="”。美元类型。“pid=" showpage_”。(intPage-1美元)。" href=" javascript:无效(0)”祝辞,lt;, lt;上一页& lt;/a> ';   其他的   strPage美元。=' & lt; a href=" javascript:无效(0)”祝辞,lt;, lt;上一页& lt;/a>”;//窗口宽度大于等于总页数   如果((intSize + 2美元)祝辞=$ intTotal)   {   (i=1; i<美元=$ intTotal;美元我+ +)   {   strClass=我==intPage美元美元吗?”class=癵_serpagcur”:“”;   strPage美元。=$链接!=? & lt; a href=" .preg_replace ("/p (\ d +)/?“p”。我美元,美元的链接)。”“strClass美元。”祝辞。$ i。& lt;/a>‘:’& lt; optype=薄薄C涝嘈汀!皃id=" showpage_’。我美元。" href=" javascript:无效(0)””。strClass美元。‘在’。我美元。& lt;/a>”;   }   }   其他的   {   if ($ intPage & lt;装天花板(intSize/2)美元)   {   (i=1; i<美元=$ intSize;美元我+ +)   {   strClass=我==intPage美元美元吗?”class=癵_serpagcur”:“”;   strPage美元。=$链接!=? & lt; a href=" .preg_replace ("/p (\ d +)/?“p”。我美元,美元的链接)。”“strClass美元。”祝辞。$ i。& lt;/a>‘:’& lt; optype=薄薄C涝嘈汀!皃id=" showpage_’。我美元。" href=" javascript:无效(0)””。strClass美元。‘在’。我美元。& lt;/a>”;   }   strPage美元。=$链接!=" ?’& lt; class=" gpage_nobor祝辞…& lt;/a> & lt; a href=" .preg_replace (“/p (\ d +)/?“p”。intTotal美元,美元的链接)。”在“intTotal美元。”& lt;/a>‘:’& lt;一个类=" gpage_nobor”祝辞…& lt;/a> & lt; optype=薄薄C涝睦嘈汀!皃id=" showpage_”。intTotal美元。" href=" javascript:无效(0)”祝辞。intTotal美元。& lt;/a>”;   }   elseif ((intTotal - intPage美元)& lt;装天花板(intSize/2)美元)   {   strPage美元。=$链接!=" ?”& lt; a href="的.preg_replace ("/p (\ d +)/薄ⅰ皃1”链接)美元。”“在1 & lt;/a> & lt;一个类=癵page_nobor祝辞…& lt;/a>”:“& lt; optype="”。美元类型。“pid=" showpage_1 " href=" javascript:无效(0)”在1 & lt;/a> & lt;一个类=" gpage_nobor“在…& lt;/a>;   (i=美元(intTotal + 1 - intSize美元);我+ +美元;i<美元;=$ intTotal)   {   strClass=我==intPage美元美元吗?”class=癵_serpagcur”:“”;   strPage美元。=$链接!=? & lt; a href=" .preg_replace ("/p (\ d +)/?“p”。我美元,美元的链接)。”“strClass美元。”祝辞。$ i。& lt;/a>‘:’& lt; optype=薄薄C涝嘈汀!皃id=" showpage_’。我美元。" href=" javascript:无效(0)””。strClass美元。‘在’。我美元。& lt;/a>”;   }   }   其他的   {   (地板intOffset=美元intSize/2);   strPage美元。=$链接!=" ?”& lt; a href="的.preg_replace ("/p (\ d +)/薄ⅰ皃1”链接)美元。”“在1 & lt;/a>”:“& lt; optype="”。美元类型。“pid=" showpage_1 " href=" javascript:无效(0)“在1 & lt;/a>;   如果((intPage - intOffset美元)比;2)   {   strPage美元。=' & lt;一个类=癵page_nobor祝辞…& lt;/a>”;   }   ($ i=((intPage - intOffset美元)& lt;=1 ?2:(intPage - intOffset美元));i<美元;=((intPage + intOffset美元)祝辞=$ intTotal ? (intTotal-1美元):(intPage + intOffset美元));美元我+ +)   {   strClass=我==intPage美元美元吗?”class=癵_serpagcur”:“”;   strPage美元。=$链接!=? & lt; a href=" .preg_replace ("/p (\ d +)/?“p”。我美元,美元的链接)。”“strClass美元。”祝辞。$ i。& lt;/a>‘:’& lt; optype=薄薄C涝嘈汀!皃id=" showpage_’。我美元。" href=" javascript:无效(0)””。strClass美元。‘在’。我美元。& lt;/a>”;   }   如果((intPage - intOffset美元)& lt;($ intTotal - 1))   {   strPage美元。=' & lt;一个类=癵page_nobor祝辞…& lt;/a>”;   }   strPage美元。=$链接!=" ?”& lt; a href="的.preg_replace ("/p (\ d +)/?“p”。intTotal美元,美元链接)。”“在”,intTotal美元。“& lt;/a>”:“& lt; optype=薄薄C涝睦嘈汀!皃id=" showpage_”。intTotal美元。" href=" javascript:无效(0)”在“intTotal美元。”& lt;/a> ';   }   }   if ($ intPage & lt;intTotal美元)   {   strPage美元。=$链接!=" ?”& lt; a href="的.preg_replace ("/p (\ d +)/?“p”。(intPage + 1美元),链接)美元。”“在下一页,gt;和gt; & lt;/a>”:“& lt; optype="”。美元类型。“pid=" showpage_”。(intPage + 1美元)。" href=" javascript:无效(0)”在下一页,gt;和gt; & lt;/a> ';   }   其他的   {   strPage美元。=' & lt; a href=" javascript:无效(0)”在下一页,gt;和gt; & lt;/a>”;   }   }   strPage美元。=" & lt;/div>;   返回strPage美元;   }

简单的php多页码分页