Calender.php: 给网站应用加上日历归档/导航


前2天尝试awstats的按天归档机制,发现忽然需要给统计报表应用做一个日历,每天链接到报表的URL。在网上搜了几套PHP的日历库:发现PHP Calendar是一个最方便的可扩展PHP类包,我需要的2个功能都非常容易方便的定制功能都有了:
1 按月/按年的日历展示;
2 可以定制日期链接到指定的URL地址;

一个简单的月历输出样例在这里:

include 'Calendar.php';

$today = date('j');
// Customize the date links to digest/yyyymmdd.html
class MyCalendar extends Calendar {
function getDateLink($day, $month, $year) {
global $today;
$link = "";
if ( $day < $today ) {
$link = "/digest/" . date("Ymd", mktime(0, 0, 0, $month, $day, $year)) . ".html";
}
return $link;
}
}

$cal = new MyCalendar;

// First, create an array of month names, January through December
$chineseMonths = array("一月", "二月", "三月", "四月",
"五月", "六月", "七月", "八月", "九月",
"十月", "十一月", "十二月");

// Then an array of day names, starting with Sunday
$chineseDays = array ("日", "一", "二", "三", "四", "五", "六");

$cal->setMonthNames($chineseMonths);
$cal->setDayNames($chineseDays);
// Week start from Monday
$cal->setStartDay(1);

echo $cal->getCurrentMonthView();

CSS配置:

.calendarHeader {
font-weight: bolder;
color: #CC0000;
background-color: #FFFFCC;
}

.calendarToday {
background-color: #FFFFFF;
}

.calendar {
background-color: #FFFFCC;
}

输出:
1 首页的右上角,给我之前做的Lilina归档器的输出做了一个本月的归档日历;
2 给从2005年5月3日以来的归档做了一个按年的浏览页,PHP源代码在这里:http://www.chedong.com/digest/index.php/source

其实很多日志统计都是按天输出的文本: xxx_yyyymmdd.txt 利用日历归档机制可以很方便的实现导航留言,也不用报表阅读者手工输入日期了。

这个归档页能帮助用户更方便的查找以前的信息外也能更好的帮助搜索引擎的蜘蛛更好的收录:
1 Yahoo 1092条: 提升空间不大
2 Google 369条
3 百度 654条

看看2个月后的收录效果。

作者:车东 发表于:2007-02-11 13:02 最后更新于:2007-04-15 19:04
版权声明:可以转载,转载时请务必以超链接形式标明文章 的原始出处和作者信息及本版权声明

引用通告

以下是前来引用的链接: Calender.php: 给网站应用加上日历归档/导航:

» AWStats的千万级日志解决方案:日报表 databasebreak=day + Canlendar.php 日历浏览 来自 车东[Blog^2]
你完全不用耐心的看完后面所有的说明,awstats在进行日志统计时, 命令行统计... [阅读更多细节]

» 网站的外链/内链统计:来自Google的网站管理员工具 来自 车东[Blog^2]
Google的网站管理员工具有这样一个功能:查询相应网站的外链/内链数量和明细。从控制台,点击一个已经提交的网站:控制台 > http://www.chedong.com/blog/ > 含外部链接的网页 > 以下是导出的部分 chedong.com/blog的外链数量统计: 可惜不是按外链数量排序的,可以导出成EXCEL,报表如下: http://www.chedong.com/blog/ 17471http://www.chedong.com/blog/in... [阅读更多细节]

Comments

大侠,最近搞毕业设计,也准备搞个类似日历的排班系统。到时候有不懂就向您请教了!

发表一个评论

(如果你此前从未在此 Blog 上发表过评论,则你的评论必须在 Blog 主人验证后才能显示,请你耐心等候。)

Creative Commons License
此 Blog 中的日记遵循以下授权 Creative Commons(创作共用)授权.
Powered by
Movable Type 3.36