php实现读取超大文本并进行分页
php实现读取超大文本并进行分页
<?php session_start(); if (empty($page)) {$page=1;} if (isset($_GET['page'])==TRUE) {$page=$_GET['page']; } ?> <html> <head> <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" /> <title>php实现读取超大文本并进行分页</title> </head> <body> <?php if($page){ $counter=file_get_contents("keyword.txt"); //读取文本,填写你的文本 $length=strlen($counter); $page_count=ceil($length/5000); function msubstr($str,$start,$len){ $strlength=$start+$len; $tmpstr=""; for($i=0;$i<$strlength;$i++) { if(ord(substr($str,$i,1))==0x0a) { $tmpstr.='<br />'; } if(ord(substr($str,$i,1))>0xa0) { $tmpstr.=substr($str,$i,2); $i++; } else{ $tmpstr.=substr($str,$i,1); } } return $tmpstr; } //--------------------------截取中文字符串-------------------------- $c=msubstr($counter,0,($page-1)*5000); $c1=msubstr($counter,0,$page*5000); echo substr($c1,strlen($c),strlen($c1)-strlen($c)); }?> <table width="100%"> <tr> <td width="42%" align="center" valign="middle"><span class="STYLE1"> <?php echo $page;?> / <?php echo $page_count;?> 页 </span></td> <td width="58%" height="28" align="left" valign="middle"> <span class="STYLE1"> <?php echo "<a href=list.php?page=1>首页</a> "; if($page!=1){ echo "<a href=list.php?page=".($page-1).">上一页</a> "; } if($page<$page_count){ echo "<a href=list.php?page=".($page+1).">下一页</a> "; } echo "<a href=list.php?page=".$page_count.">尾页</a>"; ?> </span> </td> </tr> </table> </body> </html>
千行代码,Bug何处藏。 纵使上线又怎样,朝令改,夕断肠。