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模块memcache和memcached区别分析
Jun 14 PHP
探寻PHP脚本不报错的原因
Jun 12 PHP
PHP Session机制简介及用法
Aug 19 PHP
PHP中的日期加减方法示例
Aug 21 PHP
php实现将任意进制数转换成10进制的方法
Apr 17 PHP
关于php微信订阅号开发之token验证后自动发送消息给订阅号但是没有消息返回的问题
Dec 21 PHP
php实现中文转数字
Feb 18 PHP
php数组函数array_walk用法示例
May 26 PHP
PHP版单点登陆实现方案的实例
Nov 17 PHP
PHP自定义函数获取汉字首字母的方法
Dec 01 PHP
ajax调用返回php接口返回json数据的方法(必看篇)
May 05 PHP
thinkphp5.1 框架导入/导出excel文件操作示例
May 25 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
zf框架的校验器InArray使用示例
2014/03/13 PHP
PHP批量删除、清除UTF-8文件BOM头的代码实例
2014/04/14 PHP
php操作(删除,提取,增加)zip文件方法详解
2015/03/12 PHP
PHP优化之批量操作MySQL实例分析
2020/04/23 PHP
JavaScript基本编码模式小结
2012/05/23 Javascript
jQuery实现等比例缩放大图片让大图片自适应页面布局
2013/10/16 Javascript
Javascript基础 函数“重载” 详细介绍
2013/10/25 Javascript
jQuery中empty()方法用法实例
2015/01/16 Javascript
谈谈我对JavaScript原型和闭包系列理解(随手笔记6)
2015/12/20 Javascript
jQuery基于cookie实现的购物车实例分析
2015/12/24 Javascript
学习使用jquery iScroll.js移动端滚动条插件
2020/03/24 Javascript
在vue项目中引入高德地图及其UI组件的方法
2018/09/04 Javascript
vue自定义指令用法经典实例小结
2019/03/16 Javascript
Django模板继承 extend标签实例代码详解
2019/05/16 Javascript
利用Electron简单撸一个Markdown编辑器的方法
2019/06/10 Javascript
VsCode与Node.js知识点详解
2019/09/05 Javascript
jQuery使用ajax传递json对象到服务端及contentType的用法示例
2020/03/12 jQuery
python 2.6.6升级到python 2.7.x版本的方法
2016/10/09 Python
Python中实例化class的执行顺序示例详解
2018/10/14 Python
tensorflow对图像进行拼接的例子
2020/02/05 Python
tensorflow dataset.shuffle、dataset.batch、dataset.repeat顺序区别详解
2020/06/03 Python
python中常见错误及解决方法
2020/06/21 Python
生产内勤岗位职责
2013/12/07 职场文书
高三政治教学反思
2014/02/06 职场文书
趣味运动会策划方案
2014/06/02 职场文书
债务纠纷委托书
2014/08/30 职场文书
住宿生擅自离校检讨书
2014/09/22 职场文书
打架赔偿协议书范本
2014/10/26 职场文书
六一儿童节开幕词
2015/01/29 职场文书
2015年收银员个人工作总结
2015/04/01 职场文书
2015年加油站站长工作总结
2015/05/27 职场文书
四大名著读书笔记
2015/06/25 职场文书
告知书格式
2015/07/01 职场文书
MySQL 如何分析查询性能
2021/05/12 MySQL
Python实战之大鱼吃小鱼游戏的实现
2022/04/01 Python
解决Mysql中的innoDB幻读问题
2022/04/29 MySQL