ホームページ >バックエンド開発 >PHPチュートリアル >PHPページングライブラリ
class PageBar
{
var $total ;
var $onepage ;
var $num ;
var $pageID ;
var $total_page ;
var $linkhead ;
function PageBar ( $total , $onepage )
{
$pageID = $_GET ['pageID' ] ;
$this ->合計 = $total ;
$this ->ワンページ = $ワンページ ;
$this -> total_page = @ceil($total / $onepage) ;
if ( empty ( $pageID ))
{
$this ->ページID = 1 ;
$this ->オフセット = 0 ;
}
else
{
$this ->ページID = $ページID ;
$this ->オフセット = ( $pageID - 1 ) * $onepage ;
}
$linkarr =explode ( " &pageID= " , $_SERVER [ ' QUERY_STRING ' ]) ;
$linkft = $linkarr [0] ;
$self = str_replace ( "index.php " , "" , $_SERVER [ 'PHP_SELF ' ]) ;
if ( empty ( $linkft ))
$this ->リンクヘッド = $self 。 「?」。 $フォームリンク ;
else
$this ->リンクヘッド = $self 。 「?」。 $linkft 。 $フォームリンク ;
}
function pre_page ( $char = '' , $others = '' )
{
$linkhead = $this ->リンクヘッド ;
$pageID = $this ->ページID ;
if ( $pageID > 1 )
{
$pre_page = $pageID - 1 ;
if ( $others )
return " $char " ;
else
return " $char " ;
}
else
return '' ;
}
function next_page ( $char = '' , $others = '' )
{
$linkhead = $this ->リンクヘッド ;
$total_page = $this ->合計ページ ;
$pageID = $this ->ページID ;
if ( $pageID < $total_page )
{
$next_page = $pageID + 1 ;
if ( $others )
return " $char " ;
else
return " $char " ;
}
else
return '' ;
}
function num_bar ( $num = '' , $color = '' , $others = '' , $left = '' , $right = '' )
{
$num = (空 ( $num )) ? 10 : $num ;
$this ->番号 = $番号 ;
$mid = フロア ( $num / 2 ) ;
$last = $num - 1 ;
$pageID = $this ->ページID ;
$totalpage = $this ->合計ページ ;
$linkhead = $this ->リンクヘッド ;
$left = (空 ( $left )) ? " [ " : $left ;
$right = (空 ( $right )) ? " ] " : $right ;
$color = (空 ( $color )) ? " #ff0000 " : $color ;
$minpage = (( $pageID - $mid ) $maxpage = $minpage + $last ;
if ( $maxpage > $totalpage )
{
$maxpage = $totalpage ;
$minpage = $maxpage - $last ;
$minpage = ( $minpage }
for ( $i = $minpage ; $i {
$char = $left 。 $i 。 $right ;
if ( $i == $pageID )
$linkchar = " $char " ;
else
$others ? $linkchar = " " 。 $char . " " : $linkchar = " " 。 $char . " " ;
$linkbar = $linkbar 。 $linkchar ;
}
return $linkbar ;
}
function pre_group ( $char = '' , $others = '' )
{
$pageID = $this ->ページID ;
$linkhead = $this ->リンクヘッド ;
$num = $this ->番号 ;
$mid = フロア ( $num / 2 ) ;
$minpage = (( $pageID - $mid ) $pgpageID = ( $minpage > $num ) ? $minpage - $mid : 1 ;
if ( $pageID != $minpage )
$others ? $linkHerf = " " 。 $char . " " : $linkHerf = " " . $char . " " ;
else
$linkHerf = $char ;
$linkHerf を返します。
}
function next_group ( $char = '' , $others = '' )
{
$pageID = $this ->ページID ;
$linkhead = $this ->リンクヘッド ;
$totalpage = $this ->合計ページ ;
$num = $this ->番号 ;
$mid = フロア ( $num / 2 ) ;
$last = $num ;
$minpage = (( $pageID - $mid ) $maxpage = $minpage + $last ;
if ( $maxpage > $totalpage )
{
$maxpage = $totalpage ;
$minpage = $maxpage - $last ;
$minpage = ( $minpage }
$ngpageID = ( $totalpage > $maxpage + $last ) ? $maxpage + $mid : $totalpage ;
if ( $pageID == $maxpage || $maxpage == 0 )
$linkHerf = $char ;
else
$others ? $linkHerf = " " . $char . " " ;
$linkHerf を返す ;
}
function Whole_num_bar ( $num = '' , $color = '' , $others = '' )
{
$num_bar = $this -> num_bar ( $num , $color , $others ) ;
$pre_group = $this -> pre_group ( ' |< ' , $others ) ;
$pre_page = $this -> pre_page (' < ' , $others ) ;
$next_page = $this -> next_page (' > ' , $others ) ;
$next_group = $this -> next_group (' >| ' , $others ) ;
$pre_group を返します。 $pre_page 。 $num_bar 。 $next_page 。 $next_group ;
}
}
?>