实现超长文本分页显示
2017-01-08 10:20
441 查看
一 代码
下载
1、index.php
Php代码
<?php if ($_GET[page]=="") {$_GET[page]=1;}; include("function.php");?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>超长文本的分页显示</title>
</head>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
a:link {
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
text-decoration: none;
}
a:active {
text-decoration: none;
}
.STYLE3 {color: #333333; font-size: 13px; }
-->
</style>
<body>
<table width="876" height="638" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="343" height="159"> </td>
<td width="489"> </td>
<td width="44"> </td>
</tr>
<tr>
<td height="245"> </td>
<td align="center" valign="top"><table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="22" colspan="2">
<span class="STYLE3">
<?php
//读取超长文本中的数据,实现超长文本中数据的分页显示
if($_GET[page]){
$counter=file_get_contents("file/file.txt");
$length=strlen($counter);
$page_count=ceil($length/950);
$c=msubstr($counter,0,($_GET[page]-1)*950);
$c1=msubstr($counter,0,$_GET[page]*950);
echo substr($c1,strlen($c),strlen($c1)-strlen($c));
}
?>
</span> </td>
</tr>
<tr>
<td width="202" height="22"><span class="STYLE3">页次:<?php echo $_GET[page];?> / <?php echo $page_count;?> 页 </span></td>
<td width="278"><span class="STYLE3">分页:
<?php
if($_GET[page]!=1){
echo "<a href=index.php?page=1>首页</a> ";
echo "<a href=index.php?page=".($_GET[page]-1).">上一页</a> ";
}
if($_GET[page]<$page_count){
echo "<a href=index.php?page=".($_GET[page]+1).">下一页</a> ";
echo "<a href=index.php?page=".$page_count.">尾页</a>";
下载 }
?>
</span></td>
</tr>
</table>
</td>
<td> </td>
</tr>
<tr>
<td height="234"> </td>
<td> </td>
<td> </td>
</tr>
</table>
</body>
</html>
2、function.php下载
Php代码
<?php
//定义一个用于截取一段字符串的函数msubstr()
function msubstr($str,$start,$len){ //$str指的是字符串,$start指的是字符串的起始位置,$len指的是长度。
$strlen=$start+$len; //用$strlen存储字符串的总长度(从字符串的起始位置到字符串的总长度)
for($i=0;$i<$strlen;$i++){ //通过for循环语句,循环读取字符串
if(ord(substr($str,$i,1))>0xa0){ //如果字符串中首个字节的ASCII序数值大于0xa0,则表示为汉字
$tmpstr.=substr($str,$i,2); //每次取出两位字符赋给变量$tmpstr,即等于一个汉字
$i++; //变量自加1
}else{ //如果不是汉字,则每次取出一位字符赋给变量$tmpstr
$tmpstr.=substr($str,$i,1);
}
}
return $tmpstr; //输出字符串
}
?>
二 运行结果
下载
1、index.php
Php代码
<?php if ($_GET[page]=="") {$_GET[page]=1;}; include("function.php");?>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312" />
<title>超长文本的分页显示</title>
</head>
<style type="text/css">
<!--
body {
margin-left: 0px;
margin-top: 0px;
margin-right: 0px;
margin-bottom: 0px;
}
a:link {
text-decoration: none;
}
a:visited {
text-decoration: none;
}
a:hover {
text-decoration: none;
}
a:active {
text-decoration: none;
}
.STYLE3 {color: #333333; font-size: 13px; }
-->
</style>
<body>
<table width="876" height="638" border="0" align="center" cellpadding="0" cellspacing="0">
<tr>
<td width="343" height="159"> </td>
<td width="489"> </td>
<td width="44"> </td>
</tr>
<tr>
<td height="245"> </td>
<td align="center" valign="top"><table width="480" border="0" cellspacing="0" cellpadding="0">
<tr>
<td height="22" colspan="2">
<span class="STYLE3">
<?php
//读取超长文本中的数据,实现超长文本中数据的分页显示
if($_GET[page]){
$counter=file_get_contents("file/file.txt");
$length=strlen($counter);
$page_count=ceil($length/950);
$c=msubstr($counter,0,($_GET[page]-1)*950);
$c1=msubstr($counter,0,$_GET[page]*950);
echo substr($c1,strlen($c),strlen($c1)-strlen($c));
}
?>
</span> </td>
</tr>
<tr>
<td width="202" height="22"><span class="STYLE3">页次:<?php echo $_GET[page];?> / <?php echo $page_count;?> 页 </span></td>
<td width="278"><span class="STYLE3">分页:
<?php
if($_GET[page]!=1){
echo "<a href=index.php?page=1>首页</a> ";
echo "<a href=index.php?page=".($_GET[page]-1).">上一页</a> ";
}
if($_GET[page]<$page_count){
echo "<a href=index.php?page=".($_GET[page]+1).">下一页</a> ";
echo "<a href=index.php?page=".$page_count.">尾页</a>";
下载 }
?>
</span></td>
</tr>
</table>
</td>
<td> </td>
</tr>
<tr>
<td height="234"> </td>
<td> </td>
<td> </td>
</tr>
</table>
</body>
</html>
2、function.php下载
Php代码
<?php
//定义一个用于截取一段字符串的函数msubstr()
function msubstr($str,$start,$len){ //$str指的是字符串,$start指的是字符串的起始位置,$len指的是长度。
$strlen=$start+$len; //用$strlen存储字符串的总长度(从字符串的起始位置到字符串的总长度)
for($i=0;$i<$strlen;$i++){ //通过for循环语句,循环读取字符串
if(ord(substr($str,$i,1))>0xa0){ //如果字符串中首个字节的ASCII序数值大于0xa0,则表示为汉字
$tmpstr.=substr($str,$i,2); //每次取出两位字符赋给变量$tmpstr,即等于一个汉字
$i++; //变量自加1
}else{ //如果不是汉字,则每次取出一位字符赋给变量$tmpstr
$tmpstr.=substr($str,$i,1);
}
}
return $tmpstr; //输出字符串
}
?>
二 运行结果
相关文章推荐
- bootstrap初试进度条
- Bootstrap 3.3.4 发布,Web 前端 UI 框架
- Angularjs 跨域请求
- 我的JFinal也要PathVariable
- 用户自定义多选框checkbox
- 后台管理页面布局(左侧导航长度根据右侧内容无限延伸)
- HTML5中在客户端验证文件上传的大小
- mybatis id 保存UUID
- Shiro学习之路 Hello Shiro(一)
- html5 web数据存储
- 页面元素查找之Selectors API
- 使用ajax实现用户登录验证(升级版)
- Canvas 在高清屏下绘制图片变模糊的解决方法
- angular 指令简述
- 关于前端的思考与感悟
- 新时代编辑神器:Atom
- rem : web app适配的秘密武器
- jquery高级应用之Deferred对象
- 又被事件冒泡坑了一把,这次要彻底弄懂浏览器的事件流