本文實例講述了Zend Framework實現留言本分頁功能的方法。分享給大家供大家參考,具體如下:
這裡的分頁功能運用了..Zend_Paginator這個組件來實現留言本分頁...這裡我也是參考PHPCHINA裡一位PHPer寫的這方面的教程
我實現的壞境以及項目的目錄安排是在第三篇教程的基礎上寫的..如果有朋友不明白目錄什麼的安排..請用ZF1.6.0以上.請自己前面的文章裡找一下這篇教程...我在這裡就不多說什麼了..謝謝..
第一步:在我們的控制器裡面,也就是indexController.php裡找到indexAction這個動作.我們可以看到..在這個動作裡.我們相關教程只是取數據..我們現在把這個動作(Action)改寫成如下形式..如下代碼(有注解):
function indexAction() { $message=new message();//實例化數據庫類 //取到所有留言getAllMessage,getAllReMessage //二個方法在Model(Message.php)裡定義的 //取到所有回復數據 $this->view->arrReviews=$message->getAllReMessage(); $page =1;//高置默認頁 $numPerPage = 3;//每頁顯示的條數 if(isset($_GET['page']) && is_numeric($_GET['page'])){ $page = $_GET['page'];//取到URL傳過來的頁數碼 } $array=$message->getAllMessage();//取到所有留言數據 $paginator = Zend_Paginator::factory($array); $paginator->setCurrentPageNumber($page) ->setItemCountPerPage($numPerPage); $this->view->paginator = $paginator; echo $this->view->render('header.phtml');//顯示模版頭文件 echo $this->view->render('message/index.phtml');//顯示模版 echo $this->view->render('footer.phtml');//顯示模版腳文件 }
第二步:搞定我們要分頁的樣式,這裡是以一個HTML設定分頁的樣式..在Zend Framework手冊上.提供了三種分頁顯示的方式...大家可以自己去看一下他們的用法..其實很簡單的..我運用了它的第一種.我們就在views/scripts/目錄下建立一個新的模板頁pagestyle.phtml..這個模板頁是和留言本header.phtml以及footer.phtml同一級的..因為我們可能以後還會用到這個分頁方式..所以我就放在這裡..:pagestyle.phtml代碼如下所示:(注意:在這裡請在你的入口文件index.php定義一下你的WEB_ROOT為全局變量,它就是你網站根目錄!):
if ($this->pageCount): ?> class="paginationControl"> if (isset($this->previous)): ?> "index/index/?page= previous; ?> ">< 上一頁 | else: ?> class="disabled">< 上一頁 | endif; ?> foreach ($this->pagesInRange as $page): ?> if ($page != $this->current): ?> "index/index/?page= ">$page; ?> | else: ?> = $page; ?> | endif; ?> endforeach; ?> if (isset($this->next)): ?> "index/index/?page= next; ?>">下一頁 > else: ?> class="disabled">下一頁 > endif; ?> endif; ?>
第三步:找到留言本顯示頁的index.pthml模板頁,把原來:
foreach($this->messages as $message): ?>
這個換成
if (count($this->paginator)): ?> $i=1; foreach ($this->paginator as $message): ?>
之後.我們再在最後面加一分頁的顯示:
= $this->paginationControl($this->paginator, 'Elastic', 'pagestyle.phtml'); ?>
這樣..我們就可以看到我們留言分頁大功告成
完整實例代碼點擊此處本站下載。
更多關於zend相關內容感興趣的讀者可查看本站專題:《Zend FrameWork框架入門教程》、《php優秀開發框架總結》、《Yii框架入門及常用技巧總結》、《ThinkPHP入門教程》、《php面向對象程序設計入門教程》、《php+mysql數據庫操作入門教程》及《php常見數據庫操作技巧匯總》
希望本文所述對大家基於Zend Framework框架的PHP程序設計有所幫助。