【急】简单分页算法的修改!!!!
- PHP code
- ‘.$i.’
- 下一页
<!---ecms Code highlighting produced by Actipro CodeHighlighter (freeware)http://www.CodeHighlighter.com/-->//内容分页 $c_page=$_GET['page']; //当前页 $contstr=$NewsCentent; //新闻内容 //从数据库读出的内容 $listbyte=8000; //每页显示字节数,正常情况下可设置为5000或其他 //##寻找文章分页点---------- $contlen=strlen($contstr); //新闻长度 $j=0; //总页数 $listat[0]=0; //分页点位置数组 $lookAt=0; //分页点的起始寻找位置 for($i=1;$i<$contlen/$listbyte+1;$i++){ if($lookAt$contlen){ //如果不足一页的长度 $j++; $listat[$j]=$contlen;//存储第$j页的分页点位置 break; } $endAt=strpos($contstr,"\n",$lookAt); // 寻找本页最后一段内容的结束位置(一段内容在一页内) //如果余下的内容不足一页的1/5加到本页,或找不到分页符则作一页处理 if($endAt>$contlen-$listbyte/5 or intval($endAt)<1){ $j++; $listat[$j]=$contlen; /// break; } else{ $j++; $listat[$j]=$endAt; //存储第$j页的分页点位置 $lookAt=$endAt+$listbyte; //下一次寻找分页点的起始搜寻位置 } }//打印页码 $pagenum=$j;//总页 $page=intval($c_page); if(empty($page) or $page$pagenum) $page=1; //$row[0]为ID号,翻页后要根据ID来显示内容 //输出当前页内容 $stag=$page-1; $startb=$listat[$stag];//开始位置 if($startb>0) //去除首个换行 $startb=$startb+1; $cont=substr($contstr,$startb,$listat[$page]-$startb); //heightlight_string("$cont");//php高亮代码输出 $ShowContent=$cont.'<br>'; if($pagenum>1){ $ShowPage='<dt> 上一页 </dt>'; for($i=1;$i<$pagenum+1;$i++){ if($page==$i){ $Class='Class="onnum"'; $ShowPage.= '<dt> '.$<i>1本文来#源gaodai$ma#com搞$代*码*网</i><pre>搞代gaodaima码
i.’
‘; }else{ $ShowPage.= ‘
‘; } } $ShowPage.=’
‘; }
以上是简单的PHP新闻分页算法和新闻显示,是自动分页算法,我想加一个手动分页符,能在任意位置分页,请高手修改一下,不胜感激!!!
——解决方案——————–
你把它写成一个类。哪里需要分页就调用它。
——解决方案——————–
封装成类文件,需要就调用