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

实例代码:


代码如下:

<?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>

(0)

相关推荐

  • php文章内容分页并生成相应的htm静态页面代码

    复制代码 代码如下: <?php $url='test.php?1=1'; $contents="fjka;fjsa;#page#批量生成分成文件并且加上分页代码"; $ptext ='#page#'; ContentsPages($url,$contents,$ptext) /** * 函数名:ContentsPages * 功能:文章内容分页 * 参数:$url文章内容页URL 类型string,$contents文章内容页内容 类型string,$ptext分页标识 类型s

  • php中长文章分页显示实现代码

    欢迎交流!实现代码如下: 复制代码 代码如下: <?php include('include/config.php'); ?> <?php /** *Author:乌鸟heart *实现长文章分页的代码 *原理: *利用一个数组来记录文章每一页(用p0.p1.p2...做手动标记)的起始字节数,然后通过利用php函数操作这个数组去显示分页后的文章.分页显示,传递ptag(与tag的值一样)值. *利用到的php函数: *1.strlen("字符串") - Return

  • PHP实现长文章分页实例代码(附源码)

    当文章内容比较长,为了更好的满足用户体验度,我们将文章内容分页显示处理,而一般分页处理是在后台发布文章的时候就将提交的内容生成多个分页后的静态文件.通过本文结合实例采用php动态将长文章内容进行分页处理. 查看效果演示     源码下载 如何分页 手动分页:一般在编辑内容时加入特殊分页标记,如{pages},提交后,PHP程序会根据分页符处理分页,生成不同的静态页面.这种分页方法分页准确,但是需要人工手动添加分页符,工作量大. 自动分页:PHP程序会根据设置好的分页符将内容进行分页,然后生成不同

  • PHP 长文章分页函数 带使用方法,不会分割段落,翻页在底部

    复制代码 代码如下: <?php function ff_page($content,$page) { global $expert_id; $PageLength = 2000; //每页字数 $CLength = strlen($content); $PageCount = floor(($CLength / $PageLength)) + 1; //计算页数 $PageArray=array(); $Seperator = array("\n","\r"

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

    实例代码: 复制代码 代码如下: <?php /** * ********************************************************** * Read Me * 文章分页 * * 分页方式,可以按字数分页,按换行分页,按特殊标记分页等 * 其实实现思路是一样的,只是将其按一定规律放入一个数组 * 然后根据 url 传入的参数取得某个片段即可 * 大家完全可以写一个功能强大的函数保存起来以备不时之需 * * 题外话:很多编辑器都有插入分页按钮,利用插入的代码可

  • 分享PHP函数实现数字与文字分页代码

    这篇文章主要是用PHP函数实现数字与文字分页,具体实现步骤就不罗嗦了,直接上代码 /** * * @param $_sql * @param $_size */ function _page($_sql,$_size) { //将里面的所有变量取出来,外部可以访问 global $_page,$_pagesize,$_pagenum,$_pageabsolute,$_num; if (isset($_GET['page'])) { $_page = $_GET['page']; if (empt

  • THINKPHP内容分页代码分享

    在使用Thinkphp开发的内容管理系统里面,很多东西都要自己开发,内容分页当然也是要自己开发的,下面是我根据查资料自己整理的方法: 1.首先是在后台编辑内容的时候需要插入分页符,不同的编辑器分页符自然也不同了 2.然后就是读取文章内容的时候,要根据分页符来把内容分割成多个数组然,这里需要传值当前是第几页,根据页数来读取分割后的数组 代码如下: 复制代码 代码如下: <php>     $arr_con=explode('_ueditor_page_break_tag_',$dy['art_c

  • 易语言调用JS制作统计文本字数的代码

    调用统计字数js此功能由精易网页调试助手生成代码,配合精易模块使用. 常量数据表 .版本 2 .常量 字数统计js, "<文本长度: 269>" 统计文本字数的代码 .版本 2 .支持库 spec .程序集 窗口程序集_启动窗口 .子程序 文本_字数统计, 整数型, 公开, 用word方式计算正文字数,返回文本字数,汉字算一个,单词算一个,换行符和空格不算. .参数 文本, 文本型, , 需要统计的文本 .局部变量 c, 整数型 .局部变量 n, 整数型 .局部变量 z,

  • vue实现导航菜单和编辑文本的示例代码

    导航菜单实例 <div id="main"> <!-- 激活的菜单样式为 active 类 --> <!-- 为了阻止链接在点击时跳转,我们使用了 "prevent" 修饰符 (preventDefault 的简称). --> <nav v-bind:class="active" v-on:click.prevent> <!-- 当菜单上的链接被点击时,我们调用了 makeActive 方法,

  • angular.js分页代码的实例

    对于大多数web应用来说显示项目列表是一种很常见的任务.通常情况下,我们的数据会比较多,无法很好地显示在单个页面中.在这种情况下,我们需要把数据以页的方式来展示,同时带有转到上一页和下一页的功能.现在在学习angular,使用angularjs 分页,基于 directive 实现,样式使用的 bootstrap,直接在 html代码中加入 标签即可调用. 先来看下效果图 实例代码 app.directive('pagePagination', function(){ return { rest

  • Angular.js与Bootstrap相结合实现表格分页代码

    先给大家简单介绍angular.js和bootstrap基本概念. AngularJS 是一个 JavaScript 框架.它可通过 <script> 标签添加到 HTML 页面. AngularJS 通过 指令 扩展了 HTML,且通过 表达式 绑定数据到 HTML. Bootstrap,来自 Twitter,是目前最受欢迎的前端框架.Bootstrap 是基于 HTML.CSS.JAVASCRIPT 的,它简洁灵活,使得 Web 开发更加快捷. 最近一直学习Angular.js,在学习过程

  • asp.net使用FCK编辑器中的分页符实现长文章分页功能

    本文实例讲述了asp.net使用FCK编辑器中的分页符实现长文章分页功能.分享给大家供大家参考,具体如下: <%@ Page Language="C#" AutoEventWireup="true" CodeFile="SplitContent.aspx.cs" Inherits="SplitContent" %> <%@ Register Assembly="FredCK.FCKeditorV2&

随机推荐