当前位置: 首页 > 图文教程 > 网络编程 > PHP > php生成outlook-php日历文件

PHP
PHP6 安装方法
PHP中的ob_start用法详解
学习php遇到的主要问题及解决办法
PHP知识:正则表达式中特殊字符的说明
PHP系列教程:《PHP设计模式介绍》 导言
PHP系列教程:设计模式介绍Ⅰ编程惯用法
PHP系列教程:设计模式介绍Ⅱ值对象模式
PHP系列教程:设计模式介绍Ⅲ工厂模式
PHP系列教程:设计模式介绍Ⅳ单件模式
PHP系列教程:设计模式介绍Ⅴ注册模式
PHP系列教程:设计模式介绍Ⅵ伪对象模式
PHP系列教程:设计模式介绍Ⅶ策略模式
PHP系列教程:设计模式介绍Ⅷ迭代器模式
PHP系列教程:设计模式介绍Ⅸ观测模式
PHP系列教程:设计模式介绍Ⅸ规范模式
PHP教程:自动适应范围的页码分页程序
SQL函数:CONCAT_WS和LENGTH
PHP:招PHP高级工程师的面试题
美化/etc/my.cnf文件
PHP注释查看器

PHP 中的 php生成outlook-php日历文件


出处:互联网   整理: 软晨网(RuanChen.com)   发布: 2009-08-14   浏览: 168 ::
收藏到网摘: n/a

以下为引用的内容:

 <?php
//$Filename = "SSaa.vcs";
header('Content-Type: text/x-vCalendar; method=REQUEST;charset="utf-8"');
header('Content-Disposition: inline; filename=ssaa.vcs');
    /** Put mysql connection and query statements here **/
//date_default_timezone_set (Asia/Shanghai);
$col='有一份新的简历需要查看!';
$strtime=strtotime($_GET['dateInput']);//得到开始时间,并化为时间戳,就是化为秒,不明白可以看手册,很详细,前面的文章中也有.
$cc=$strtime-(1*8*60*60);这是是算时区差.因为我的服务器设的是美国时间.
$newstrtime= strftime( "%Y-%m-%d %H:%M:%S",$cc);//is start date time
$endtime=strtotime($_GET['enddateInput']);//得到会议结束时间.
$endcc=$endtime-(1*8*60*60);//一样.
$newendtime= strftime( "%Y-%m-%d %H:%M:%S",$endcc);//is end date time
$oo=array("-"," ",":");
$bb=array("","T","");
$vCalStart = str_replace($oo,$bb,$newstrtime);//这里是把会议开始时间转化为outlook识别的时间格式
$vCalEnd = str_replace($oo,$bb,$newendtime);//一样
$exe = "select * from TABLENAME where id=".$_GET['id'];//下在是查询,得到要输出的内容.
$rss=@mysql_query($exe);
$rows=mysql_fetch_array($rss);
$outcontent="\r\r姓    名: \r\r电话号码: ";
$DescDump = str_replace("\r", "=0D=0A",$outcontent);//把内容换在outlook识别的格式
?>
BEGIN:VCALENDAR
VERSION:1.0
PRODID:SSPCA Web Calendar
TZ:-07
BEGIN:VEVENT
ORGANIZER:MAILTO:<?php echo $emailv."\n";?>
SUMMARY;ENCODING=QUOTED-PRINTABLE:<?php echo $col ."\n";?>
LOCATION;ENCODING=QUOTED-PRINTABLE:<?php echo $locol ."\n";?>
DESCRIPTION;ENCODING=QUOTED-PRINTABLE: <?php echo $DescDump . "\n"; ?>
DTSTART:<?php echo $vCalStart . "Z \n"; ?>
DTEND:<?php echo $vCalEnd . "Z \n"; ?>
END:VEVENT
END:VCALENDAR

上面都注释了.都是中文注释,应该会明白.

最重要的不是PHP代码,而是begin to end 中的内容,你可以把中间的php换成字符串,生成一下.试试就知道

begin to end 中的内容,对应的是outlook中的哪些部分了.(如果你的英文比我强,你不用试就知道了.\呵呵.)