我们浏览一些网站的时候,往往看到一些新闻是刚刚更新不久的,假如要是人工维护的话,那会是一项非常繁琐的工作,然而,我们可以通过程序来控制实现更新操作,事情就会变得很方便了,我可不是要偷懒.
在这里,我使用PHP来实现这一功能。其原理就是根据新闻发布的时间逆序排列好,然后在一页面显示新闻连接列表,每一个连接都对应一条新闻内容网页。具体操作如下:
一、首先,在你的站点下建立一个目录,将编辑好的新闻页都保存在此目录下,将来所有的新闻页都放入这里,方便维护。新闻页格式为超文本方式(可别说你还不会HTML),首行为“<HTML><HEAD><TITLE>新闻标题</TITLE></HEAD>”(原因随后解释,一定要在同一行啊!)。
二、编写程序,实现新闻自动更新功能(假设文件名为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);
- 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;
- $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,能看到吗?
本程序仅仅提供了基本的功能,你可以增加更多的控制功能,还有页面的修饰和美化等工作,就要靠你自己了。 |