首页 > php开发 > PHP自动更新新闻DIY

PHP自动更新新闻DIY

我们浏览一些网站的时候,往往看到一些新闻是刚刚更新不久的,假如要是人工维护的话,那会是一项非常繁琐的工作,然而,我们可以通过程序来控制实现更新操作,事情就会变得很方便了,我可不是要偷懒.

在这里,我使用PHP来实现这一功能。其原理就是根据新闻发布的时间逆序排列好,然后在一页面显示新闻连接列表,每一个连接都对应一条新闻内容网页。具体操作如下:

一、首先,在你的站点下建立一个目录,将编辑好的新闻页都保存在此目录下,将来所有的新闻页都放入这里,方便维护。新闻页格式为超文本方式(可别说你还不会HTML),首行为&ldquo;<HTML><HEAD><TITLE>新闻标题</TITLE></HEAD>&rdquo;(原因随后解释,一定要在同一行啊!)。

二、编写程序,实现新闻自动更新功能(假设文件名为paixu.php),源程序如下:

<?php
$fp = array(
    "filename" => "",
    "filetime" => "",
    "firstline" => ""
); //建立数组,保存文件名、文件首行
$dd = dir('新闻保存目录'); //读取新闻文件的保存目录
$i = 0;
clearstatcache();
while ($file = $dd->read()) //循环读出目录中的文件
{
    if (is_file($dd->path . "/" . $file)) {
        $fp[$i]["filename"] = $dd->path . "/" . $file; //保存文件名
        $fr = fopen($dd->path . "/" . $file, "r");
        $fp[$i]["firstline"] = fgetss($fr, 60); //去除HTML标记后保存文件首行(也就是为什么我们要把新闻页首行写成要求的格式)
        fclose($fr);
        if ($time = date("Y m d H:i", filemtime($dd->path . "/" . $file))) //保存文件时间,以此作为排序条件
        {
            $fp[$i]["filetime"] = $time;
        }
        $i;
    }
}
$i = count($fp); //保存文件数
$i-= 4;
for ($j = 0; $j < $i; $j) //按照冒泡算法排序
for ($k = $i; $k > $j; $k--) if ($fp[$j]["filetime"] <= $fp[$k]["filetime"]) {
    $c = $fp[$j]["filetime"];
    $fname = $fp[$j]["filename"];
    $fcontent = $fp["$j"]["firstline"];
    $fp[$j]["filetime"] = $fp[$k]["filetime"];
    $fp[$j]["filename"] = $fp[$k]["filename"];
    $fp[$j]["firstline"] = $fp[$k]["firstline"];
    $fp[$k]["filetime"] = $c; //line30
    $fp[$k]["filename"] = $fname;
    $fp[$k]["firstline"] = $fcontent;
}
for ($i = 0; $i <= (count($fp) - 4); $i) //读取保存的文件信息,做好相应连接
{
    echo "<tr><td>";
    echo "<a href=" . $fp[$i]["filename"] . ">" . $fp[$i]["firstline"] . "</a>";
    echo "</td><td class=font1>";
    echo "(" . $fp[$i]["filetime"] . ")<br>n";
    echo "</td></tr>";
}
$dd->close();
?>

三、将程序和目录放到你的网站上,然后在浏览器敲入HTTP://网站名/目录/panxu.php,能看到吗?

本程序仅仅提供了基本的功能,你可以增加更多的控制功能,还有页面的修饰和美化等工作,就要靠你自己了。


本文地址:http://www.phprm.com/develop/fs895.html

转载随意,但请附上文章地址:-)

标签:php 自动更新 新闻

相关文章

发表留言