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&mysql(二)
Oct 09 PHP
php&java(二)
Oct 09 PHP
PHP操作文件方法问答
Mar 16 PHP
PHP Mysql编程之高级技巧
Aug 27 PHP
php文件上传表单摘自drupal的代码
Feb 15 PHP
php 删除一个数组中的某个值.兼容多维数组!
Feb 18 PHP
PHP实现多图片上传类实例
Jul 26 PHP
php的XML文件解释类应用实例
Sep 22 PHP
apache中为php 设置虚拟目录
Dec 17 PHP
PHP中使用jQuery+Ajax实现分页查询多功能操作(示例讲解)
Sep 17 PHP
laravel-admin 管理平台获取当前登陆用户信息的例子
Oct 08 PHP
php 命名空间(namespace)原理与用法实例小结
Nov 13 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中的时间显示
2007/01/18 PHP
浅析ThinkPHP中的pathinfo模式和URL重写
2014/01/06 PHP
PHP实现通过中文字符比率来判断垃圾评论的方法
2014/10/20 PHP
总结的一些PHP开发中的tips(必看篇)
2017/03/24 PHP
windows环境下使用Composer安装ThinkPHP5
2018/05/18 PHP
html中table数据排序的js代码
2011/08/09 Javascript
原生javaScript做得动态表格(注释写的很清楚)
2013/12/29 Javascript
js判断undefined类型示例代码
2014/02/10 Javascript
Internet Explorer 11 浏览器介绍:别叫我IE
2014/09/28 Javascript
JavaScript实现向setTimeout执行代码传递参数的方法
2015/04/16 Javascript
asp.net+jquery.form实现图片异步上传的方法(附jquery.form.js下载)
2016/05/05 Javascript
详解javascript立即执行函数表达式IIFE
2017/02/13 Javascript
javascript获取指定区间范围随机数的方法
2017/09/08 Javascript
JS正则表达式常见用法实例详解
2018/06/19 Javascript
理理Vue细节(推荐)
2019/04/16 Javascript
基于element-ui封装可搜索的懒加载tree组件的实现
2020/05/22 Javascript
Vue实现简单购物车功能
2020/12/13 Vue.js
[04:47]DOTA2-潍坊风行电子俱乐部探秘
2014/08/08 DOTA
解决tensorflow模型参数保存和加载的问题
2018/07/26 Python
Python学习笔记之迭代器和生成器用法实例详解
2019/08/08 Python
使用python-opencv读取视频,计算视频总帧数及FPS的实现
2019/12/10 Python
python可视化text()函数使用详解
2020/02/11 Python
Python中求对数方法总结
2020/03/10 Python
PyCharm常用配置和常用插件(小结)
2021/02/06 Python
详解HTML5中div和section以及article的区别
2015/07/14 HTML / CSS
教研处工作方案
2014/05/26 职场文书
最美家庭活动方案
2014/08/31 职场文书
民间借贷协议书范本
2014/10/01 职场文书
2015年党员自我剖析材料
2014/12/17 职场文书
博士导师推荐信
2015/03/25 职场文书
2015年班主任个人工作总结
2015/03/31 职场文书
机器人瓦力观后感
2015/06/12 职场文书
2016五一手机促销广告语
2016/01/28 职场文书
ORACLE查看当前账号的相关信息
2021/06/18 Oracle
Unity连接MySQL并读取表格数据的实现代码
2021/06/20 MySQL
Mybatis 一级缓存和二级缓存原理区别
2022/09/23 Java/Android