您好,欢迎访问一九零五行业门户网

PHP长文章分页的使用例子

文章分页用到比较多同时使用过cms的朋友也碰到过都具备了文章分页功能了,下面我们自己来看一个关于文章分页的例子,具体的操作步骤如下所示,希望文章能够帮助到各位朋友
content.txt
这个文件里面放的是内容了,如果你是与mysql数据库结合的话只要把把这一句换成你的数据库的内容即可。
index.php文件
首 页
                    网站模板
                    网页特效
                    php
                    精选网址
教程:php长文章分页教程与演示
                未来10年千万人将没有工作?
                cut_str();
                echo $page[$ipage - 1];
                echo '' . $cp->pagenav() . '
';
                ?>
长文章分页类  page.class.php
page_word = $page_word;   
            $this->cut_tag = array(, ,
,
, ”。, 。, ., !, ……, ?, ,);   
            $this->cut_custom = {nextpage};   
            $tmp_page = isset($_get[ipage]) ? intval($_get[ipage]) : 1;   
            $this->ipage = $tmp_page>1?$tmp_page:1;
   $this->pagestr = $pagestr;
        }   
        //统计总字数   
        function get_page_word(){   
            $this->sum_word = $this->strlen_utf8($this->pagestr);   
            return $this->sum_word;   
        }   
        /*  统计utf-8编码的字符长度 
         *  一个中文,一个英文都为一个字 
         */ 
        function strlen_utf8($str){   
           $i = 0;   
           $count = 0;   
           $len = strlen ($str);   
           while ($i                $chr = ord ($str[$i]);   
               $count++;   
               $i++;   
               if ($i >= $len)   
                   break;   
               if ($chr & 0x80){   
                   $chr                    while ($chr & 0x80) {   
                       $i++;   
                       $chr                    }   
               }   
           }   
           return $count;   
        }   
        //设置自动分页符号   
        function set_cut_tag($tag_arr=array()){   
            $this->cut_tag = $tag_arr;   
        }   
        //设置手动分页符   
        function set_cut_custom($cut_str){   
            $this->cut_custom = $cut_str;   
        }   
        function show_cpage($ipage=0){   
            $this->cut_str();   
            $ipage = $ipage ? $ipage:$this->ipage;   
            return $this->pagearr[$ipage];   
        }   
        function cut_str(){   
            $str_len_word = strlen($this->pagestr);     //获取使用strlen得到的字符总数   
            $i = 0;   
            if ($str_len_wordpage_word){   //如果总字数小于一页显示字数   
                $page_arr[$i] = $this->pagestr;   
            }else{   
                if (strpos($this->pagestr, $this->cut_custom)){   
                    $page_arr = explode($this->cut_custom, $this->pagestr);   
                }else{   
                    $str_first = substr($this->pagestr, 0, $this->page_word);   //0-page_word个文字    cutstr为func.global中的函数   
                    foreach ($this->cut_tag as $v){   
                        $cut_start = strrpos($str_first, $v);       //逆向查找第一个分页符的位置   
                        if ($cut_start){   
                            $page_arr[$i++] = substr($this->pagestr, 0, $cut_start).$v;   
                            $cut_start = $cut_start + strlen($v);   
                            break;   
                        }   
                    }   
                    if (($cut_start+$this->page_word)>=$str_len_word){  //如果超过总字数   
                        $page_arr[$i++] = substr($this->pagestr, $cut_start, $this->page_word);   
                    }else{   
                        while (($cut_start+$this->page_word)                            foreach ($this->cut_tag as $v){   
                                $str_tmp = substr($this->pagestr, $cut_start, $this->page_word);        //取第cut_start个字后的page_word个字符   
                                $cut_tmp = strrpos($str_tmp, $v);       //找出从第cut_start个字之后,page_word个字之间,逆向查找第一个分页符的位置   
                                if ($cut_tmp){   
                                    $page_arr[$i++] = substr($str_tmp, 0, $cut_tmp).$v;   
                                    $cut_start = $cut_start + $cut_tmp + strlen($v);   
                                    break;   
                                }   
                            }     
                        }   
                        if (($cut_start+$this->page_word)>$str_len_word){   
                            $page_arr[$i++] = substr($this->pagestr, $cut_start, $this->page_word);   
                        }   
                    }   
                }   
            }   
            $this->sum_page = count($page_arr);     //总页数   
            $this->pagearr = $page_arr; 
   return $page_arr;
        }   
        //显示上一条,下一条   
        function pagenav(){   
            $this->set_url();   
            $str = '';
//$str .= $this->ipage.'/'.$this->sum_page;
for($i=1;$isum_page;$i++){
    if($i==$this->ipage) {
     $str.= .$i. ;
    }else{
     $str.= url.%24i.%22>.$i. ;
    }
   }
return $str;   
        }   
  function show_prv_next2(){   
            $this->set_url();   
            $str = '';
if ($this->sum_page>1 and $this->ipage>1){   
                $str.= url.(%24this->ipage-1).%22>上一页 ;   
            }  
   if ($this->sum_page>1 and $this->ipagesum_page){   
                $str .= url.(%24this->ipage+1).%22>下一页;   
            }      
            return $str;   
        }   
        function show_page_select(){   
            if ($this->sum_page>1){   
                $str =    ;   
                for ($i=1; $isum_page; $i++){   
                    $str.= url.$i.'>ipage)==$i ? selected='selected':).>第.$i.页;   
                }   
                $str.= ;   
            }   
            return $str;   
        }   
        function show_page_select_wap(){   
            if ($this->sum_page>1){   
                $str = ipage-1).'>;   
                for ($i=1; $isum_page; $i++){   
                    $str.= url.$i.'>第.$i.节;   
                }   
                $str.= ;   
            }   
            return $str;   
        }   
        function set_url(){   
            parse_str($_server[query_string], $arr_url);   
            unset($arr_url[ipage]);   
            if (empty($arr_url)){   
                $str = ipage=;   
            }else{   
                $str = http_build_query($arr_url).&ipage=;   
            }   
            $this->url = http://.$_server[http_host].$_server[php_self].?.$str;   
        }   
    }   
?>
其它类似信息

推荐信息