有没有好一点的php分页原生代码啊 求大神分享一下代码+注解 有没有好一点的php分页原生代码啊 求大神分享一下代码+注解 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 这个东西是入门的基本功,先自己琢磨写一下吧 或者你看看thinkphp的分页类 分页就那么几行代码,没什么好坏 http://bbs.csdn.net/topics/390192431 我觉得《PHP 和MySQL WEB开发》挺好的,又有基础,又有实例这本书的实例源码:链接:https://pan.baidu.com/s/1dUs7RS 密码:5hhx(7天有效) <?phpclass TpPageHelper extends Paginator{ //TODO : 中间按钮个数 protected $bnumber = 10; //TODO : 首页 protected function getfirstButton($str = '') { if ($this->currentPage() <= 1) { return $this->getDisabledTextWrapper($str); } $url = $this->url(1); return $this->getPageLinkWrapper($url, $str); } //TODO : 上一页 protected function getPreviousButton($text = "«") { if ($this->currentPage() <= 1) { return $this->getDisabledTextWrapper($text); } $url = $this->url( $this->currentPage() - 1 ); return $this->getPageLinkWrapper($url, $text); } //TODO : 页码 protected function getLinks() { if ($this->total > $this->listRows) { if ($this->lastPage < $this->bnumber) { return $this->getUrlLinks($this->getUrlRange(1, $this->lastPage)); } else { $min = 1; if ($this->currentPage > $this->bnumber / 2) $min = $this->currentPage - floor($this->bnumber / 2); if ($this->lastPage - $this->currentPage < $this->bnumber / 2) $min = $this->lastPage - $this->bnumber + 1; return $this->getUrlLinks($this->getUrlRange($min, $min + $this->bnumber - 1)); } } } //TODO : 下一页 protected function getNextButton($text = '»') { if (!$this->hasMore) { return $this->getDisabledTextWrapper($text); } $url = $this->url($this->currentPage() + 1); return $this->getPageLinkWrapper($url, $text); } //TODO : 末页 protected function getlastButton($text = '') { if (!$this->hasMore) { return $this->getDisabledTextWrapper($text); } $url = $this->url($this->lastPage()); return $this->getPageLinkWrapper($url, $text); } //TODO : 渲染页 public function render() { //数据是否足够分页 if ($this->hasPages()) { return sprintf( '<ul class="btn-item fr">%s %s %s %s %s</ul>', $this->getfirstButton('首页'), $this->getPreviousButton('上一页'), $this->getLinks(), $this->getNextButton('下一页'), $this->getlastButton('末页') ); } } //TODO : 生成禁用按钮 protected function getDisabledTextWrapper($text) { return '<li class="disabled"><span>' . $text . '</span></li>'; } //TODO : 生成普通按钮 protected function getPageLinkWrapper($url, $page) { if ($page == $this->currentPage()) { return $this->getActivePageWrapper($page); } return $this->getAvailablePageWrapper($url, $page); } //TODO : 生成当前页按钮 protected function getActivePageWrapper($text) { return '<li class="active"><span>' . $text . '</span></li>'; } //TODO : 可点击按钮 protected function getAvailablePageWrapper($url, $page) { return '<li><a href="' . htmlentities($url) . '">' . $page . '</a></li>'; } //TODO : 批量生成页码按钮 protected function getUrlLinks(array $urls) { $html = ''; foreach ($urls as $page => $url) { $html .= $this->getPageLinkWrapper($url, $page); } return $html; }} 谁能给我说说个学PHP和MySQL的教程网 慢查询中怎么有这个查询,没有执行这个东西的啊 微信公众平台借口怎么获取用户的昵称,求php代码 mysql能不能存储数组? 购物车显示物品问题 怎样避免弹出的窗口被上网助手拦截? 正则一小问 PHP中如何实现进程间通讯? 没有接触过php,要调试一段程序 一个关于cookie 的问题啊!菜鸟,谢谢了! 关于wampserver里的php配置问题 php 解析并显示pdf文件
这本书的实例源码:链接:https://pan.baidu.com/s/1dUs7RS 密码:5hhx(7天有效)
<?php
class TpPageHelper extends Paginator
{
//TODO : 中间按钮个数
protected $bnumber = 10; //TODO : 首页
protected function getfirstButton($str = '')
{
if ($this->currentPage() <= 1) {
return $this->getDisabledTextWrapper($str);
} $url = $this->url(1); return $this->getPageLinkWrapper($url, $str);
} //TODO : 上一页
protected function getPreviousButton($text = "«")
{ if ($this->currentPage() <= 1) {
return $this->getDisabledTextWrapper($text);
} $url = $this->url(
$this->currentPage() - 1
); return $this->getPageLinkWrapper($url, $text);
} //TODO : 页码
protected function getLinks()
{
if ($this->total > $this->listRows) {
if ($this->lastPage < $this->bnumber) {
return $this->getUrlLinks($this->getUrlRange(1, $this->lastPage));
} else {
$min = 1;
if ($this->currentPage > $this->bnumber / 2) $min = $this->currentPage - floor($this->bnumber / 2);
if ($this->lastPage - $this->currentPage < $this->bnumber / 2) $min = $this->lastPage - $this->bnumber + 1;
return $this->getUrlLinks($this->getUrlRange($min, $min + $this->bnumber - 1));
}
}
} //TODO : 下一页
protected function getNextButton($text = '»')
{
if (!$this->hasMore) {
return $this->getDisabledTextWrapper($text);
} $url = $this->url($this->currentPage() + 1); return $this->getPageLinkWrapper($url, $text);
} //TODO : 末页
protected function getlastButton($text = '')
{
if (!$this->hasMore) {
return $this->getDisabledTextWrapper($text);
} $url = $this->url($this->lastPage()); return $this->getPageLinkWrapper($url, $text);
} //TODO : 渲染页
public function render()
{
//数据是否足够分页
if ($this->hasPages()) {
return sprintf(
'<ul class="btn-item fr">%s %s %s %s %s</ul>',
$this->getfirstButton('首页'),
$this->getPreviousButton('上一页'),
$this->getLinks(),
$this->getNextButton('下一页'),
$this->getlastButton('末页')
);
}
} //TODO : 生成禁用按钮
protected function getDisabledTextWrapper($text)
{
return '<li class="disabled"><span>' . $text . '</span></li>';
} //TODO : 生成普通按钮
protected function getPageLinkWrapper($url, $page)
{
if ($page == $this->currentPage()) {
return $this->getActivePageWrapper($page);
} return $this->getAvailablePageWrapper($url, $page);
} //TODO : 生成当前页按钮
protected function getActivePageWrapper($text)
{
return '<li class="active"><span>' . $text . '</span></li>';
} //TODO : 可点击按钮
protected function getAvailablePageWrapper($url, $page)
{
return '<li><a href="' . htmlentities($url) . '">' . $page . '</a></li>';
} //TODO : 批量生成页码按钮
protected function getUrlLinks(array $urls)
{
$html = ''; foreach ($urls as $page => $url) {
$html .= $this->getPageLinkWrapper($url, $page);
} return $html;
}}