首页 > php代码 > php 文章内容分页并生成对应的htm静态文件实例

php 文章内容分页并生成对应的htm静态文件实例

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分页标识 类型string
 * 作者:七夜
 * QQ:64438136 linus.php@gmail.com MSN:zhijian@live.com
 */
//文章数组
$arr = explode($ptext, $contents);
//数组长度&总页数
$total = count($arr);
//当前页
$nowpage = $_GET['pages'] ? $_GET['pages'] : 1;
//上页
$prepage = $nowpage == 1 ? 1 : $nowpage - 1;
//下页
$nextpage = $nowpage > $total - 1 ? $total : $nowpage + 1;
//最后一页
$lastpage = $total;
$pdiv = '<br /><div style=\"height:30px;width:500px;border:1px; blackground-color:#ff0000;\">';
$pdiv.= "第{$nowpage}页 / 总{$total}页  ";
//首页链接
$pdiv.= "<li style=\"display:inline;\"><a href=\"{$url}&pages=1\" style=\"text-decoration:none;\">首页</a></li>";
//上页链接
$pdiv.= "<li style=\"display:inline;\"><a href=\"{$url}&pages={$prepage}\" style=\"text-decoration:none;\">  上一页  </a></li>";
//显示分页列表
$color = '';
for ($i = 1; $i <= $total; $i++) {
    if ($i == $nowpage) {
        $color = "color:#ff0000;";
    } else {
        $color = '';
    }
    $pdiv.= "  <li style=\"display:inline;\"><a href=\"{$url}&pages={$i}\" style=\"text-decoration:none;\"><span style=\"{$color}\">{$i}</span></a></li>";
}
//下页链接
$pdiv.= "  <li style=\"display:inline;\"><a href=\"{$url}&pages={$nextpage}\" style=\"text-decoration:none;\">  下一页</a></li>";
//末页链接
$pdiv.= "<li style=\"display:inline;\"><a href=\"{$url}&pages={$lastpage}\" style=\"text-decoration:none;\">  末页  </a></li>";
$pdiv.= '</div>';
//输出内容
echo $arr[$nowpage - 1];
//不分页则不显示分页列表
if ($total <= 1) $pdiv = '';
//输出分页列表
echo $pdiv;


下面是相关静态生成页面,虽然代码不正确但思路是没问题的。

复制代码 代码如下:


<?php
$tmpBody = "fjka;fjsa;{page}批量生成分成文件并且加上分页代码";
$tmpUrl = 'www.phprm.com';
$tmpUrlarray = explode('.', $tmpUrl);
$tmpArray = explode('{page}', $tmpBody);
$total = count($tmpArray);
$id = "2";
if ($total > 1) {
    $tmpStr = '';
    for ($i = 0; $i < $total; $i++) //遍历所有分页
    {
        if ($i == 0) {
            $str.= '<a href=' . $id . '.htm class=bodypage target=_self>' . ($i + 1) . '</a> ';
        } else {
            $str.= '<a href=' . $id . '_' . $i . '.htm class=bodypage target=_self>' . ($i + 1) . '</a> ';
        }
    }
    //批量生成分成文件并且加上分页代码
    $str = '<div class=mupage>' . $str . '</div>';
    for ($j = 0; $j < $total; $j++) {
        if ($j == 0) {
            $fname = $id . '.htm';
        } else {
            $fname = $id . '_' . $j . '.htm';
        }
        $tempMu = str_replace('{htmlContent}', $tmpArray[$j] . $str, $tempLate);
        makeHtml($tempMu, $filePath, $fname); //这个函数就不说明了,一个创建文件的代码
        
    }
    $mupage = 1;
}
$tempLate = str_replace('{htmlContent}', $tmpBody, $tempLate); //普通文章 以{page}分页取出保存到一个数组再生成分页地址,然后再由根据explode分的数组的内容生成htm 页面
$total = 0;
$str = '';
$i = 0;
$j = 0;
/*
本段代码生成的原理是id_分页号如100_1.htm,100_2.htm这样的形式,先是把 
*/
function makeHtml($tempMu, $filePath, $fname) {
    $fp = fopen($filePath . $filename, "w");
    fwrite($fp, $tempMu);
    fclose($fp);
}


永久地址:http://www.phprm.com/code/33341.html

转载随意~请带上教程地址吧^^

标签:none

发表留言