`
skymouse
  • 浏览: 16337 次
  • 性别: Icon_minigender_1
  • 来自: 汕头
社区版块
存档分类
最新评论

php实现ckeditor的分页

    博客分类:
  • php
阅读更多

ckeditor有个分页的按钮,能够插入分页符,但这只是在编辑时显示的效果而已,要真正实现分页,还需要其它语言,这里使用php采取一种方法来实现分页,当然还有其它的方法可以实现。

这里使用的方法是:在显示的页面读取数据后,根据ckeditor插入的分页代码将内容分成几部分存放在数据中,ckeditor源码中插入的分页代码是:

<div style="page-break-after: always;"><span style="display: none;">&nbsp;</span></div>

 

在火狐中插入的代码也是如此,但是如果是在ie中编辑,则插入的代码是:

<div style="page-break-after: always"><span style="display: none">&nbsp;</span></div>

 

因此,在将内容转为数组时,使用正则表达式进行匹配以防止不同浏览器保存的内容不一致。匹配的正则表达式如下:

"/<div style=\"page-break-after: always;?\">\s*<span style=\"display: none;?\">&nbsp;<\/span>\s*<\/div>/"

 

我在测试时,<div style="page-break-after: always;">与<span style="display: none;">之间被添加换行符,所以用了“\s*”进行匹配,在后边的</span>与</div>之间也用了“\s*”进行匹配以防万一。将此功能写成函数,如下:

/**
 * 获取文章内容(当前分页)
 * 
 * @param string $content 文章内容
 * @param integer $page 页数
 * @return array
 */
function get_article_content($content, $page=1){
    $page = $page ? intval($page) : 1;
    $article = array(
        'info' => array(),
        'pages' => 1
    );
    if(!empty($content)){
        $pattern = "/<div style=\"page-break-after: always;?\">\s*<span style=\"display: none;?\">&nbsp;<\/span>\s*<\/div>/";
        $contents = preg_split($pattern, $content);
        $article['pages'] = count($contents);
        ($page > $article['pages']) && $page = $article['pages'];
        $article['info'] = $contents[$page - 1];
    }
    return $article;
}

 

分享到:
评论

相关推荐

    php+MySQL实现的简易贴吧程序

    2、把CKEditor的某个多余的目录删除,缩减了空间 3、改进了一些小bug 安装之前,要把旧表完全删除才行 1.02更新log 1、修正了几个html标签错误 2、增加了分页功能 3、把原来的config.php修改名称为mysql_config.php...

    phpcms中的ckeditor编辑器升级方法

    1. 分页符表示方式不同:原版CKEditor使用`&lt;div&gt;`标签,而phpcms使用`[page]`特殊标记。 2. 编辑器下方,phpcms增加了三个按钮:分页符、子标题和附件上传。 3. 不同版本的CKEditor可能导致自定义插件不兼容。 接...

    php文本在线编辑 php文本在线编辑

    富文本编辑器如TinyMCE或CKEditor可以被集成到PHP页面中,提供类似于Microsoft Word的文本编辑体验。 2. **PHP后端处理**:当用户在前端编辑完文本并提交时,PHP脚本会接收这些数据。PHP的`$_POST`或`$_GET`变量...

    最新版CKEditor的配置方法及插件(Plugin)编写示例

    本文主要介绍了最新版CKEditor的配置方法,并且提供了一个文章分页插件的编写示例。 ### CKEditor配置方法 配置CKEditor通常包含以下几个步骤: 1. **下载CKEditor**: 访问CKEditor官网下载最新版本,并解压到...

    测试图形,fck编辑器,分页

    分页通常通过JavaScript、jQuery或服务器端脚本实现,例如PHP、ASP.NET等。合理的分页设计可以提高网站的性能,减少服务器负载,并让用户更容易浏览和找到所需信息。分页要考虑的关键因素有每页显示的项目数量、页码...

    php smarty

    在这个项目中,使用Smarty实现的功能包括新闻的添加、修改、删除、分页、图片随机码生成、搜索以及调用编辑器等。 1. **新闻的添加**:在`add.php`中,开发者可能创建了一个表单,用户可以通过这个表单输入新闻的...

    DoitPHP 框架

    五、提供了PHP程序开发中常用的操作类库,无论是COOKIE、SESSION的操作,还是实现网页页面的分页效果,实现音频、视频、图片幻灯片的播放,生成RAR、EXCEL、PDF等文件类型的文件,实现MEMCACH、XCACHE、APC等常见的...

    Tommy framework v1.0.2 易用的轻量级PHP框架.zip

    五、提供了PHP程序开发中常用的类库(扩展类库),如论是COOKIE、SESSION的操作,还是实现网页的页面缓存,数据文件的缓存,实现网页页面的分页效果,以及生成RAR、EXCEL、PDF文件类,甚至实现音频、视频文件的播放...

    PHP框架DoitPHP v1.3.zip

    五、提供了PHP程序开发中常用的操作类库,无论是COOKIE、SESSION的操作,还是实现网页页面的分页效果,实现音频、视频、图片幻灯片的播放,生成RAR、EXCEL、PDF等文件类型的文件,实现MEMCACH、XCACHE、APC等常见的...

    PhP框架DoitPHP v1.5 MySql版.zip

    五、提供了PHP程序开发中常用的操作类库,无论是COOKIE、SESSION的操作,还是实现网页页面的分页效果,实现音频、视频、图片幻灯片的播放,生成RAR、EXCEL、PDF等文件类型的文件,实现MEMCACH、XCACHE、APC等常见的...

    PHP框架DoitPHP v1.5 SAE版.zip

    五、提供了PHP程序开发中常用的操作类库,无论是COOKIE、SESSION的操作,还是实现网页页面的分页效果,实现音频、视频、图片幻灯片的播放,生成RAR、EXCEL、PDF等文件类型的文件,实现MEMCACH、XCACHE、APC等常见的...

    DoitPHP 1.0

    五、提供了PHP程序开发中常用的操作类库,无论是COOKIE、SESSION的操作,还是实现网页页面的分页效果,实现音频、视频、图片幻灯片的播放,生成RAR、EXCEL、PDF等文件类型的文件,实现MEMCACH、XCACHE、APC等常见的...

    自己写的留言板(php)

    本项目是使用PHP语言实现的一个简单的留言板系统,具备了基础的留言发布和图片上传功能,同时也使用了一个第三方编辑器来增强用户体验。 PHP是一种广泛使用的服务器端脚本语言,尤其在动态网站开发领域有着重要的...

    《DoitPHP编码规范》

    作为PHP框架里的“后起之秀”,DoitPHP秉承了那些优秀的PHP框架所共有的:代码的OOP编写风格、URL的路由功能、MVC的...五、提供了PHP程序开发中常用的操作类库,无论是COOKIE、SESSION的操作,还是实现网页页面的分页效

    Tommy framework v1.0.2.zip

    五、提供了PHP程序开发中常用的类库(扩展类库),如论是COOKIE、SESSION的操作,还是实现网页的页面缓存,数据文件的缓存,实现网页页面的分页效果,以及生成RAR、EXCEL、PDF文件类,甚至实现音频、视频文件的播放...

    海豚PHP1.0.3完全开发手册-基于ThinkPHP5.0.8的快速开发框架.pdf

    此外,还有编辑器支持,如CKEditor、wangEditor、markdown编辑器和summernote编辑器,满足不同编辑需求。 **表格**(table)组件同样强大,可以定制页面标题和提示信息,支持添加和编辑列,以及多种字段类型,如...

    CI 新手入门例子

    CI框架提供了分页类,只需配置好URL、每页显示数量等参数,就可以轻松实现分页效果。 **综上所述,这个压缩包文件可能包含的代码示例涵盖了CI框架的基本使用,包括数据库操作、用户会话管理、表单验证、前端AJAX...

    基于ThinkPHP6.1和Layui2.8的快速开发的后台管理系统。.zip

    3. **丰富的组件**:包括表格、表单、按钮、图标、弹窗、导航、面包屑、分页等,满足后台管理系统的常见需求。 4. **主题定制**:提供了多种主题样式,可以通过简单的配置改变整体风格。 5. **易于集成**:与jQuery...

    mycomPHP理系统

    实现上,可能涉及MySQL数据库设计(如新闻表、分类表),以及PHP的SQL查询、分页处理和全文搜索技术。 3. **产品订购模块**:该模块需要处理产品展示、购物车、订单生成与支付流程。产品数据存储在数据库中,通过...

    Tommy framework 1.0.2

    五、提供了PHP程序开发中常用的类库(扩展类库),如论是COOKIE、SESSION的操作,还是实现网页的页面缓存,数据文件的缓存,实现网页页面的分页效果,以及生成RAR、EXCEL、PDF文件类,甚至实现音频、视频文件的播放...

Global site tag (gtag.js) - Google Analytics