PHP自動(dòng)更新新聞DIY
來(lái)源:程序員人生 發(fā)布時(shí)間:2013-11-21 17:25:45 閱讀次數(shù):3498次
我們?yōu)g覽一些網(wǎng)站的時(shí)候,往往看到一些新聞是剛剛更新不久的,假如要是人工維護(hù)的話,那會(huì)是一項(xiàng)非常繁瑣的工作,然而,我們可以通過程序來(lái)控制實(shí)現(xiàn)更新操作,事情就會(huì)變得很方便了,我可不是要偷懶.
在這里,我使用PHP來(lái)實(shí)現(xiàn)這一功能。其原理就是根據(jù)新聞發(fā)布的時(shí)間逆序排列好,然后在一頁(yè)面顯示新聞連接列表,每一個(gè)連接都對(duì)應(yīng)一條新聞內(nèi)容網(wǎng)頁(yè)。具體操作如下:
一、首先,在你的站點(diǎn)下建立一個(gè)目錄,將編輯好的新聞頁(yè)都保存在此目錄下,將來(lái)所有的新聞頁(yè)都放入這里,方便維護(hù)。新聞頁(yè)格式為超文本方式(可別說你還不會(huì)HTML),首行為“<HTML><HEAD><TITLE>新聞標(biāo)題</TITLE></HEAD>”(原因隨后解釋,一定要在同一行啊!)。
二、編寫程序,實(shí)現(xiàn)新聞自動(dòng)更新功能(假設(shè)文件名為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();
- ?>
三、將程序和目錄放到你的網(wǎng)站上,然后在瀏覽器敲入HTTP://網(wǎng)站名/目錄/panxu.php,能看到嗎?
本程序僅僅提供了基本的功能,你可以增加更多的控制功能,還有頁(yè)面的修飾和美化等工作,就要靠你自己了。
生活不易,碼農(nóng)辛苦
如果您覺得本網(wǎng)站對(duì)您的學(xué)習(xí)有所幫助,可以手機(jī)掃描二維碼進(jìn)行捐贈(zèng)