PHP读取TXT格式小说并分页
一个PHP在线读取服务器中的TXT并输出显示的代码,可以支持分页阅读整本TXT文档
<?php //----------------you should save this file as index.php----------------
session_start();
if (empty($page)) {$page=1;}
if (isset($_GET['page'])==TRUE) {$page=$_GET['page']; }
?>
<!DOCTYPE HTML>
<html>
<head>
<meta charset="gb2312" />
<title>在线小说网</title>
<meta name="Keywords" content="免费小说,小说阅读" />
<meta name="Description" content="本站收集经典恐怖小说" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<style>
body, div, ul, li{margin:0; padding:0}
body{ color:#000000; background:#C7EDCC; text-align:left} /* 字体、背景的颜色,文字居左 */
a{ color:#000000; text-decoration:none} /* 超链接颜色,清除超链接下划线 */
a:hover{ color:#BA2636} /* 超链接变色 */
ul#nav{ width:100%; background:#00C957} /* 导航条颜色 */
ul#nav li{ display:inline}
ul#nav li a{ display:inline-block; padding:0 20px; height:60px; line-height:60px;
color:#FFF; font-family:"\9ED1\4F53"; font-size:1.1em} /* 导航文字:颜色、字体、大小 */
ul#nav li a:hover{ background:#00FF7F} /* 导航块颜色 */
div#post{ margin:0 auto; width:96%; word-wrap:break-word}
p#biaoti{ font-family:"\5FAE\8F6F\96C5\9ED1"; font-size:1.2em; text-align:center}
pre#neirong{ font-family:"\5B8B\4F53"; font-size:1em;white-space: pre-wrap; word-wrap: break-word;}
div#foot{ position:relative; bottom:0px; width:100%; height:60px; line-height:60px; font-family:"\9ED1\4F53"; font-size:15px; text-align:center; background:#00C957; z-index:1; overflow:hidden}
</style>
</head>
<body>
<ul id="nav">
<li><a href="/">分类</a></li>
<li><a href="../">科幻灵异</a></li>
</ul>
<p id="biaoti">鬼吹灯</p>
<div id="post">
<pre id="neirong">
<?php header("Content-type: text/html; charset=gb2312");
if($page){
$counter=file_get_contents("gcd.txt"); //-------read the file into a string.-------
$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));
}?>
</pre>
</div>
<div id="foot">
<?php echo $page;?> / <?php echo $page_count;?> 页
<?php
echo "<a href=index.php?page=1>首页</a> ";
if($page!=1){
echo "<a href=index.php?page=".($page-1).">上一页</a> ";
}
if($page<$page_count){
echo "<a href=index.php?page=".($page+1).">下一页</a> ";
}
echo "<a href=index.php?page=".$page_count.">尾页</a>";
?>
</div>
</body>
</html>
新建一个空白文件将上面的代码复制进去,重命名为index.php,注意要用GB2312编码保存,否则会导致html代码中文乱码。