PHP 文本文章分页代码 按标记或长度(不涉及数据库)


Posted in PHP onJune 07, 2012

实例代码:

<?php 
/** 
* ********************************************************** 
* Read Me 
* 文章分页 
* 
* 分页方式,可以按字数分页,按换行分页,按特殊标记分页等 
* 其实实现思路是一样的,只是将其按一定规律放入一个数组 
* 然后根据 url 传入的参数取得某个片段即可 
* 大家完全可以写一个功能强大的函数保存起来以备不时之需 
* 
* 题外话:很多编辑器都有插入分页按钮,利用插入的代码可显示分页 
* 
* filename: page.php 
* charset: UTF-8 
* create date: 2012-5-16 
* ********************************************************** 
* @author itbdw <itbudaoweng@gmail.com> 
* @copyright (C) 2011-2012 itbdw 
* @link http://weibo.com/itbudaoweng 
*/ 
header('Content-Type:text/html; charset=utf-8'); 
?> 
<?php 
$title = 'Pagination Test'; 
//需要分页的数据 
$data = <<<DATA 
Hey, guys. I am here to test if it is working. 
This pagination is very simple, isn't it?<!--pagination--> 
And I tried to use different method to page it. 
Can you see it? 
DATA; 
//当前文章页 
$page = 0; 
//初始文章长度 
$length = 0; 
//分页长度 
$perpage = 160; 
//显示在页面的代码 
$link = ''; 
//分割后的数组 
$strArr = array(); 
$page = isset($_GET['page']) ? intval($_GET['page']) : 0; 
$length = strlen($data); 
//按字数分割 
// $str = str_split($data, $perpage); 
//按字符分割 
$delimiter = "\n"; 
// $delimiter = '<--pagination-->'; 
$strArr = explode($delimiter, $data); 
$strNum = count($strArr); 
$content = $strArr[$page]; 
if ($strNum > 1) { 
if ($page != 0) { 
$link .= '<a href="?page=0">首页</a>'; 
} else { 
$link .= '<span>首页</span>'; 
} 
for ($n = 0; $n < $strNum; $n++) { 
if ($n == $page) { 
$link .= '<span>' . ($n + 1) . '</span>'; 
} else { 
$link .= "<a href='?page={$n}'>" . ($n + 1) . "</a>"; 
} 
} 
$link .= ''; 
if ($page != ($strNum - 1)) { 
$link .= "<a href='?page=" . ($strNum - 1) . "'>尾页</a>"; 
} else { 
$link .= '<span>尾页</span>'; 
} 
} 
?> 
<!DOCTYPE HTML> 
<html lang="en-US"> 
<head> 
<meta charset="UTF-8"> 
<style type="text/css"> 
body { 
font-family: '微软雅黑'; 
} 
.link a, span { 
margin: 1px; 
padding: 1px; 
} 
.link span { 
color: #777; 
} 
.link a { 
color: #26A2DA; 
text-decoration: none; 
} 
</style> 
<title>测试文章分页</title> 
</head> 
<body> 
<h1><?php echo $title; ?></h1> 
<p><?php echo $content; ?></p> 
<hr /> 
<p class="link"><?php echo $link; ?></p> 
</body> 
</html>
PHP 相关文章推荐
3
Oct 09 PHP
优化NFR之一 --MSSQL Hello Buffer Overflow
Oct 09 PHP
PHP防止post重复提交数据的简单例子
Jun 07 PHP
dedecms中使用php语句指南
Nov 13 PHP
php metaphone()函数的定义和用法
May 15 PHP
php实现xml与json之间的相互转换功能实例
Jul 07 PHP
PHP页面输出时js设置input框的选中值
Sep 30 PHP
ThinkPHP实现简单登陆功能
Apr 28 PHP
Yii2设置默认控制器的两种方法
May 19 PHP
php静态成员方法和静态的成员属性的使用方法
Oct 26 PHP
基于laravel-admin 后台 列表标签背景的使用方法
Oct 03 PHP
phpStorm2020 注册码
Sep 17 PHP
PHP 查找字符串常用函数介绍
Jun 07 #PHP
php中通过curl smtp发送邮件
Jun 05 #PHP
Smarty的配置与高级缓存技术分享
Jun 05 #PHP
PHP Parse Error: syntax error, unexpected $end 错误的解决办法
Jun 05 #PHP
php中json_decode()和json_encode()的使用方法
Jun 04 #PHP
php安全之直接用$获取值而不$_GET 字符转义
Jun 03 #PHP
PHP版网站缓存加快打开速度的方法分享
Jun 03 #PHP
You might like
消息持续发送的完整例子
2006/10/09 PHP
php+mysql开源XNA 聚合程序发布 下载
2007/07/13 PHP
php获取某个目录大小的代码
2008/09/10 PHP
php zend 相对路径问题
2009/01/12 PHP
PHP中copy on write写时复制机制介绍
2014/05/13 PHP
php版微信支付api.mch.weixin.qq.com域名解析慢原因与解决方法
2016/10/12 PHP
php cli模式下获取参数的方法
2017/05/05 PHP
通过Mootools 1.2来操纵HTML DOM元素
2009/09/15 Javascript
jqeury eval将字符串转换json的方法
2011/01/20 Javascript
Jquery 数据选择插件Pickerbox使用介绍
2012/08/24 Javascript
qq悬浮代码(兼容各个浏览器)
2014/01/29 Javascript
JS来动态的修改url实现对url的增删查改
2014/09/05 Javascript
javascript实现简单的html5视频播放器
2015/05/06 Javascript
javascript排序函数实现数字排序
2015/06/26 Javascript
vue项目中用cdn优化的方法
2018/01/03 Javascript
vue页面切换到滚动页面显示顶部的实例
2018/03/13 Javascript
mpvue构建小程序的方法(步骤+地址)
2018/05/22 Javascript
vue组件定义,全局、局部组件,配合模板及动态组件功能示例
2019/03/19 Javascript
layui监听单元格编辑前后交互的例子
2019/09/16 Javascript
Vue在chrome44偶现点击子元素事件无法冒泡的解决方法
2019/12/15 Javascript
electron踩坑之remote of undefined的解决
2020/10/06 Javascript
详解python中index()、find()方法
2019/08/29 Python
使用Python将字符串转换为格式化的日期时间字符串
2019/09/01 Python
python实现五子棋游戏(pygame版)
2020/01/19 Python
Python基于yaml文件配置logging日志过程解析
2020/06/23 Python
Python模块zipfile原理及使用方法详解
2020/08/04 Python
django使用graphql的实例
2020/09/02 Python
HTML5 canvas基本绘图之绘制曲线
2016/06/27 HTML / CSS
DOUGLAS荷兰:购买香水和化妆品
2020/10/24 全球购物
西班牙购买隐形眼镜、眼镜和太阳镜网站:Lentiamo.es
2020/06/11 全球购物
Ejb技术面试题
2015/04/29 面试题
百年校庆节目主持词
2014/03/27 职场文书
校长竞聘演讲稿
2014/05/16 职场文书
中药学自荐信
2014/06/15 职场文书
民事答辩状格式范文
2015/05/21 职场文书
初中语文教师研修日志
2015/11/13 职场文书