100) { $lastPage = 100; } $first = 2; if ($lastPage > $size) { if ($currentPage > $size + 2) { $first = $currentPage - $size; } } for ($i = $first; $i <= $lastPage && $i <= $currentPage + $size; $i++) { $pages[] = $i; } if ($currentPage + $size < $lastPage) { $pages[] = $lastPage; } $list = array(); if ($currentPage != 1) { $list[] = '
  • ' . '' . '<' . '' . '
  • '; } else { $list[] = '
  • <
  • '; } $parent = null; foreach ($pages as $page) { if ($parent !== null && $parent !== $page - 1) { $list[] = '
  • ...
  • '; } $parent = $page; if ($currentPage == $page) { $list[] = '
  • '.$page.'
  • '; } else { $list[] = '
  • ' .'' .$page .'' .'
  • '; } } if ($currentPage != $lastPage) { $list[] = ''; } else { $list[] = ''; } return ''; }