PHP自动更新新闻DIY


Posted in PHP onOctober 09, 2006

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

在这里,我使用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);//去除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,能看到吗?

最后,再罗嗦几句(我可不是要多赚Money,主要还是为人民服务),你的网站必须支持php功能。

而且,我仅仅提供了基本的功能,你可以增加更多的控制功能,还有页面的修饰和美化等工作,就要靠你自己了(什么?说我不负责到底?我苦...)。 好了,就先到此为止。有什么不对的地方,还请大家多指教,可发Email:zbclh@sina.com与我联系交流。

PHP 相关文章推荐
PHP 根据IP地址控制访问的代码
Apr 22 PHP
适用于php-5.2 的 php.ini 中文版[金步国翻译]
Apr 17 PHP
php学习笔记 数组遍历实现代码
Jun 09 PHP
判断PHP数组是否为空的代码
Sep 08 PHP
无需重新编译php加入ftp扩展的解决方法
Feb 07 PHP
php中如何防止表单的重复提交
Aug 02 PHP
php实现文件下载实例分享
Jun 02 PHP
一个图片地址分解程序(用于PHP小偷程序)
Aug 23 PHP
PHP中empty和isset对于参数结构的判断及empty()和isset()的区别
Nov 15 PHP
Smarty高级应用之缓存操作技巧分析
May 14 PHP
PHP PDO操作MySQL基础教程
Jun 05 PHP
PHP简单实现欧拉函数Euler功能示例
Nov 06 PHP
模拟OICQ的实现思路和核心程序(二)
Oct 09 #PHP
层叠菜单的动态生成
Oct 09 #PHP
多数据表共用一个页的新闻发布
Oct 09 #PHP
PHP与MySQL交互使用详解
Oct 09 #PHP
3种平台下安装php4经验点滴
Oct 09 #PHP
多重?l件?合查?(二)
Oct 09 #PHP
文章推荐系统(三)
Oct 09 #PHP
You might like
PHP得到某段时间区间的时间戳 php定时任务
2012/04/12 PHP
str_replace只替换一次字符串的方法
2013/04/09 PHP
Windows平台实现PHP连接SQL Server2008的方法
2017/07/26 PHP
PHP中soap用法示例【SoapServer服务端与SoapClient客户端编写】
2018/12/25 PHP
gearman中任务的优先级和返回状态实例分析
2020/02/27 PHP
php设计模式之职责链模式实例分析【星际争霸游戏案例】
2020/03/27 PHP
纯JS实现的批量图片预览加载功能
2011/08/14 Javascript
jquery ajax学习笔记2 使用XMLHttpRequest对象的responseXML
2011/10/16 Javascript
IE事件对象(The Internet Explorer Event Object)
2012/06/27 Javascript
ExtJS下 Ext.Direct加载和提交过程排错小结
2013/04/02 Javascript
javascript预加载图片、css、js的方法示例介绍
2013/10/14 Javascript
纯JavaScript实现的分页插件实例
2015/07/14 Javascript
AngularJS中监视Scope变量以及外部调用Scope方法
2016/01/23 Javascript
BootStrop前端框架入门教程详解
2016/12/25 Javascript
js实现滑动到页面底部自动加载更多功能
2017/02/15 Javascript
angular ng-click防止重复提交实例
2017/06/16 Javascript
微信小程序wx.request实现后台数据交互功能分析
2017/11/25 Javascript
微信小程序保存图片到相册权限设置
2020/04/09 Javascript
Vue使用Element实现增删改查+打包的步骤
2020/11/25 Vue.js
Pythont特殊语法filter,map,reduce,apply使用方法
2016/02/27 Python
Python模拟登陆淘宝并统计淘宝消费情况的代码实例分享
2016/07/04 Python
pygame游戏之旅 添加碰撞效果的方法
2018/11/20 Python
Python爬取数据保存为Json格式的代码示例
2019/04/09 Python
python之array赋值技巧分享
2019/11/28 Python
如何基于python操作json文件获取内容
2019/12/24 Python
Timberland美国官网:全球领先的户外品牌
2016/08/15 全球购物
Sneaker Studio波兰:购买运动鞋
2018/04/28 全球购物
人力资源管理专业毕业生自我评价
2013/09/21 职场文书
学生手册家长评语
2014/02/10 职场文书
业务部门经理岗位职责
2014/02/23 职场文书
档案工作汇报材料
2014/08/21 职场文书
社区党员群众路线教育实践活动心得体会
2014/11/03 职场文书
护士实习自荐信
2015/03/06 职场文书
写给汽车4S店的创业计划书,拿来即用!
2019/08/09 职场文书
基于Redis延迟队列的实现代码
2021/05/13 Redis
MySQL之MyISAM存储引擎的非聚簇索引详解
2022/03/03 MySQL