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文本数据库的搜索方法
Oct 09 PHP
对text数据类型不支持代码页转换 从: 1252 到: 936
Apr 23 PHP
PHP生成唯一的促销/优惠/折扣码(附源码)
Dec 28 PHP
如何用php生成扭曲及旋转的验证码图片
Jun 07 PHP
php预定义变量使用帮助(带实例)
Oct 30 PHP
php正则匹配html中带class的div并选取其中内容的方法
Jan 13 PHP
PHP实用函数分享之去除多余的0
Feb 06 PHP
php生成图片验证码-附五种验证码
Aug 19 PHP
php发送http请求的常用方法分析
Nov 08 PHP
zend框架实现支持sql server的操作方法
Dec 08 PHP
PHP基于双向链表与排序操作实现的会员排名功能示例
Dec 26 PHP
360搜索引擎自动收录php改写方案
Apr 28 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将某个目录下面的所有文件罗列出来的方法详解
2013/06/21 PHP
PHP安装threads多线程扩展基础教程
2015/11/17 PHP
php-beanstalkd消息队列类实例分享
2017/07/19 PHP
PHP实现双链表删除与插入节点的方法示例
2017/11/11 PHP
PHP的mysqli_ssl_set()函数讲解
2019/01/23 PHP
jquery全选checkBox功能实现代码(取消全选功能)
2013/12/10 Javascript
解决jquery插件冲突的问题
2014/01/23 Javascript
js弹出确认是否删除对话框
2014/03/27 Javascript
深入浅析Node.js 事件循环
2015/12/20 Javascript
jquery拖拽效果完整实例(附demo源码下载)
2016/01/14 Javascript
NodeJS实现阿里大鱼短信通知发送
2016/01/17 NodeJs
AngularJS 入门教程之HTML DOM实例详解
2016/07/28 Javascript
nodejs个人博客开发第二步 入口文件
2017/04/12 NodeJs
基于DOM节点删除之empty和remove的区别(详解)
2017/09/11 Javascript
angularjs实现简单的购物车功能
2017/09/21 Javascript
如何编写一个d.ts文件的步骤详解
2018/04/13 Javascript
JavaScript实现一个带AI的井字棋游戏源码
2018/05/21 Javascript
Vue触发式全局组件构建的方法
2018/11/28 Javascript
js实现适配移动端的拖动效果
2020/01/13 Javascript
javascript实现文字跑马灯效果
2020/06/18 Javascript
vue Cli 环境删除与重装教程 - 版本文档
2020/09/11 Javascript
Python将xml和xsl转换为html的方法
2015/03/10 Python
从局部变量和全局变量开始全面解析Python中变量的作用域
2016/06/16 Python
python画出三角形外接圆和内切圆的方法
2018/01/25 Python
python pip安装包出现:Failed building wheel for xxx错误的解决
2019/12/25 Python
基于Python爬取京东双十一商品价格曲线
2020/10/23 Python
python邮件中附加文字、html、图片、附件实现方法
2021/01/04 Python
在线学习西班牙语、法语或其他语言:Babbel.com
2018/02/07 全球购物
通信工程专业个人找工作求职信范文
2013/09/21 职场文书
《我的第一本书》教学反思
2014/02/15 职场文书
工作失职检讨书范文
2015/05/05 职场文书
2015年社区流动人口工作总结
2015/05/12 职场文书
入党积极分子半年考察意见
2015/06/02 职场文书
党风廉洁教育心得体会
2016/01/20 职场文书
浅析InnoDB索引结构
2021/04/05 MySQL
python3实现无权最短路径的方法
2021/05/12 Python