public function paginate($step, $page = NULL)
    {
        // store build attr\bind param
        $store = $this->_storeBuildAttr();
        $bind_params = $this->_storeBindParam();
        // get count
        $count = $this->count();
        // restore build attr\bind param
        $this->_reStoreBuildAttr($store);
        $this->_reStoreBindParam($bind_params);

        // create paginate data
        $page = $page ? $page : 1;
        $this->limit($step * ($page - 1), $step);

        $rst['total']        = $count;
        $rst['per_page']     = $step;
        $rst['current_page'] = $page;
        $rst['next_page']    = ($page + 1) > ($count / $step) ? NULL : ($page + 1);
        $rst['prev_page']    = ($page - 1) < 1 ? NULL : ($page - 1);
        $rst['first_page']   = 1;
        $rst['last_page']    = $count / $step;
        $rst['data']         = $this->get();

        return $rst;
    }
public function paginate($step, $page = NULL)
    {
        // store build attr\bind param
        $store = $this->_storeBuildAttr();
        $bind_params = $this->_storeBindParam();
        // get count
        $count = $this->count();
        // restore build attr\bind param
        $this->_reStoreBuildAttr($store);
        $this->_reStoreBindParam($bind_params);

        // create paginate data
        $page = $page ? $page : 1;
        $this->limit($step * ($page - 1), $step);

        $rst['total']        = $count;
        $rst['per_page']     = $step;
        $rst['current_page'] = $page;
        $rst['next_page']    = ($page + 1) > ($count / $step) ? NULL : ($page + 1);
        $rst['prev_page']    = ($page - 1) < 1 ? NULL : ($page - 1);
        $rst['first_page']   = 1;
        $rst['last_page']    = $count / $step;
        $rst['data']         = $this->get();

        return $rst;
    }
public function paginate ( $ step , $ page = NULL ) { // store build attr\bind param $ store = $ this -> _storeBuildAttr ( ) ; $ bind_params = $ this -> _storeBindParam ( ) ; // get count $ count = $ this -> count ( ) ; // restore build attr\bind param $ this -> _reStoreBuildAttr ( $ store ) ; $ this -> _reStoreBindParam ( $ bind_params ) ; // create paginate data $ page = $ page ? $ page : 1 ; $ this -> limit ( $ step * ( $ page - 1 ) , $ step ) ; $ rst [ 'total' ] = $ count ; $ rst [ 'per_page' ] = $ step ; $ rst [ 'current_page' ] = $ page ; $ rst [ 'next_page' ] = ( $ page + 1 ) > ( $ count / $ step ) ? NULL : ( $ page + 1 ) ; $ rst [ 'prev_page' ] = ( $ page - 1 ) < 1 ? NULL : ( $ page - 1 ) ; $ rst [ 'first_page' ] = 1 ; $ rst [ 'last_page' ] = $ count / $ step ; $ rst [ 'data' ] = $ this -> get ( ) ; return $ rst ; }
get paginate data

@param  int $step
@param  int $page
@return  array
@throws  \PDOException
get paginate data