Source for file REMySQLPagination.class.php

Documentation is available at REMySQLPagination.class.php

  1. <?php
  2. /**
  3.  * Módosítva: 2010.03.06.
  4.  *
  5.  * @author Takács Ákos (Rimelek), programmer [at] rimelek [dot] hu
  6.  * @copyright Copyright (C) 2010, Takács Ákos
  7.  * @version 1.0
  8.  * @package REPagination
  9.  */
  10.  
  11. /**
  12.  * @ignore
  13.  */
  14. require_once dirname(__FILE__).'/../../REPClasses.class.php';
  15. REPClasses::import('AREPagination');
  16. REPClasses::import('REPMySQLItems');
  17.  
  18. /**
  19.  * MySQL adatbázisban tárolt adatok lapozására.
  20.  *
  21.  * {@example mysqlpagination.php}
  22.  *
  23.  * @author Takács Ákos (Rimelek), programmer [at] rimelek [dot] hu
  24.  * @copyright Copyright (C) 2010, Takács Ákos
  25.  * @package REPagination
  26.  */
  27. {
  28.     /**
  29.      * @var REPMySQLItems 
  30.      */
  31.     protected $items = null;
  32.     /**
  33.      *
  34.      * @param REPMySQLItems $items 
  35.      */
  36.     public function  __construct(REPMySQLItems $items)
  37.     {
  38.         $this->items = $items;
  39.     }
  40.  
  41.     /**
  42.      * @see $pagevar
  43.      * @param int $page Elhagyása esetén az url-ből veszi az oldalszámot.
  44.      * @return REPFileItems Aktuális oldal rekordjait tartalmazó objektum
  45.      */
  46.     public function page($page=null)
  47.     {
  48.         $page $page !== null ? (int)$page $this->pageNumber();
  49.         $maxpage $this->maxpage();
  50.         if ($page <= 0)
  51.         {
  52.             $page 1;
  53.         }
  54.         else if ($page >= $maxpage)
  55.         {
  56.             $page $maxpage;
  57.         }
  58.  
  59.         $offset ($page-1$this->itemPerPage();
  60.         return $this->items->newInstance($this->items->connectId(),$offset,$this->itemPerPage());
  61.     }
  62.  
  63.     /**
  64.      * @see AREPagination::maxpage()
  65.      * @return int 
  66.      */
  67.     public function maxpage()
  68.     {
  69.         return ceil($this->items->max()  $this->itemPerPage());
  70.     }
  71. }
  72. ?>

Documentation generated on Sat, 06 Mar 2010 22:00:16 +0100 by phpDocumentor 1.4.1