有没有师傅帮忙写个分页的代码。小白不懂。有师傅要收徒的留下个联系方式。真心的一定给红包

解决方案 »

  1.   

    /*
      * 设置分页
      * @param pageNum:每页显示数,pageNow:当前页,allNum:总条数
     */
     public static function set_page($pageNum=20,$pageNow=1,$allNum)
     {
       $pages = ceil($allNum/$pageNum);   // 总页数    $GLOBALS['smarty']->assign('allNum',$allNum);
       $GLOBALS['smarty']->assign('allPages',$pages);
       
       $arr = array();   //用于返回的数组
       if($pageNow>$pages || $pageNow<1 || $pages==1)  // 当前页大于所有页 or 当前页小于1 or 总共只有一页
       {  
          return $arr; 
       }
       if($pageNow>1)  // 首页
       {
          $arr[] = array('num'=>1,'name'=>'首页');
          $arr[] = array('num'=>$pageNow-1,'name'=>'«上一页');
       }
       
       //前3条
       for($i=$pageNow-3;$i<$pageNow;$i++)
       {
          if($i>=1)
      {
         $arr[] = array('num'=>$i,'name'=>$i);
      }
       }
       
       //当前
       $arr[] = array('num'=>$pageNow,'name'=>$pageNow);
       
       //后3条
       $next = $pageNow<4 ? 7 : $pageNow+3 ;
       for($i=$pageNow+1; $i<=$next; $i++)
       {
          if($i<=$pages)
      {
         $arr[] = array('num'=>$i,'name'=>$i);
      }
       }
       if($pageNow<$pages)
       {
          $arr[] = array('num'=>$pageNow+1,'name'=>'下一页»');
          $arr[] = array('num'=>$pages,'name'=>'末页');
       }   
       return $arr;
     }