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中PDO基础教程 入门级
Sep 04 PHP
PHP下利用shell后台运行PHP脚本,并获取该脚本的Process ID的代码
Sep 19 PHP
php地址引用(php地址引用的效率问题)
Mar 23 PHP
file_get_contents获取不到网页内容的解决方法
Mar 07 PHP
Thinkphp模板中截取字符串函数简介
Jun 17 PHP
PHP图片处理之图片旋转和图片翻转实例
Nov 19 PHP
php查询whois信息的方法
Jun 08 PHP
php在数据库抽象层简单使用PDO的方法
Nov 03 PHP
Smarty模板简单配置与使用方法示例
May 23 PHP
PHP自定义函数格式化json数据示例
Sep 14 PHP
Laravel基础_关于view共享数据的示例讲解
Oct 14 PHP
PHP http请求超时问题解决方案
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+mysql)
2007/11/23 PHP
php入门学习知识点一 PHP与MYSql连接与查询
2011/07/14 PHP
Php output buffering缓存及程序缓存深入解析
2013/07/15 PHP
PHP5中实现多态的两种方法实例分享
2014/04/21 PHP
php通过修改header强制图片下载的方法
2015/03/24 PHP
PHP获取数组的键与值方法小结
2015/06/13 PHP
php判断linux下程序问题实例
2015/07/09 PHP
Yii多表联合查询操作详解
2016/06/02 PHP
php+ajax简单实现全选删除的方法
2016/12/06 PHP
PHP无限极分类函数的实现方法详解
2017/04/15 PHP
PHP大文件分割上传 PHP分片上传
2017/08/28 PHP
基于jquery的二级联动菜单实现代码
2011/04/25 Javascript
判断对象是否Window的实现代码
2012/01/10 Javascript
jQuery用unbind方法去掉hover事件及其他方法介绍
2013/03/18 Javascript
jQuery之尺寸调整组件的深入解析
2013/06/19 Javascript
js鼠标及对象坐标控制属性详细解析
2013/12/14 Javascript
JS获取select-option-text_value的方法
2013/12/26 Javascript
js获取json元素数量的方法
2015/01/27 Javascript
JS解析XML实例分析
2015/01/30 Javascript
在线所见即所得HTML编辑器的实现原理浅析
2015/04/25 Javascript
JavaScript实现仿新浪微博大厅和腾讯微博首页滚动特效源码
2015/09/15 Javascript
Ztree新增角色和编辑角色回显问题的解决
2016/10/25 Javascript
Vue2.0 slot分发内容与props验证的方法
2017/12/12 Javascript
解决使用layui的时候form表单中的select等不能渲染的问题
2019/09/18 Javascript
vue v-for 点击当前行,获取当前行数据及event当前事件对象的操作
2020/09/10 Javascript
Python Queue模块详解
2014/11/30 Python
Python3解决棋盘覆盖问题的方法示例
2017/12/07 Python
Python实现获取nginx服务器ip及流量统计信息功能示例
2018/05/18 Python
Python简单处理坐标排序问题示例
2019/07/11 Python
浅谈ROC曲线的最佳阈值如何选取
2020/02/28 Python
Python3.7 读取音频根据文件名生成脚本的代码
2020/04/07 Python
深入解析HTML5使用SVG图像时的viewBox属性用法
2015/09/02 HTML / CSS
计算机软件个人的自荐信范文
2013/12/01 职场文书
四年的个人工作自我评价
2013/12/10 职场文书
助人为乐道德模范事迹材料
2014/08/16 职场文书
python用tkinter开发的扫雷游戏
2021/06/01 Python