> 백엔드 개발 > PHP 튜토리얼 > php处理ckeditor分页符有关问题

php处理ckeditor分页符有关问题

WBOY
풀어 주다: 2016-06-13 13:22:36
원래의
1156명이 탐색했습니다.

php处理ckeditor分页符问题

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

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

 style=”page-break-after: always;”> style=”display: none;”> 

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

 style=”page-break-after: always”> style=”display: none”> 

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

“/

\s* \s*/”

我在测试时,

之间被添加换行符,所以用了“\s*”进行匹配,在后边的
之间也用了“ \s*”进行匹配以防万一。将此功能写成函数,如下:

/**  * 获取文章内容(当前分页)

*   * @param string $content 文章内容

* @param integer $page 页数

* @return array

*/  

function get_article_content($content, $page=1){

$page = $page ? intval($page) :

$article = array(   ’info’ => array(),  ’pages’ => 1       );

if(!emptyempty($content)){

$pattern = ”/

\s* \s*/”;            $contents = preg_split($pattern, $content);

$article['pages'] = count($contents);

($page > $article['pages']) && $page = $article['pages'];

$article['info'] = $contents[$page - 1];

}

return $article;

}

관련 라벨:
원천:php.cn
본 웹사이트의 성명
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.
인기 튜토리얼
더>
최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿