+ -
当前位置:首页 → 问答吧 → 发一个PHP日历函数

发一个PHP日历函数

时间:2009-05-27

来源:互联网

本帖最后由 streen003 于 2009-6-15 12:22 编辑

[php]
function calendar() //创建日历函数
{

//获取当前时间的年,月,日。

$now_time = $_SERVER['REQUEST_TIME'];

$now_year = date('Y',$now_time);
$now_month = date('m',$now_time);
$now_date = date('j',$now_time);


//获取当前所在月份的总天数,第一天的星期数。

$time_index = mktime(0,0,0,$now_month, 1, $now_year);

$total_days = date('t', $time_index);
$day_index = date('w', $time_index);

//计算日历的总行数。
$total_lines = ceil( ($total_days + $day_index)/7 );



//显示日历

print< <<EOT
<table width="210" style="border:1px solid #FF0000 ">
<tr><td colspan="7" align="center">$now_year 年 $now_month 月</td></tr>
<tr align="center" bgcolor="#FF6600">
  <td>日</td>
  <td>一</td>
  <td>二</td>
  <td>三</td>
  <td>四</td>
  <td>五</td>
  <td>六</td>
</tr>
EOT;

for($i = 0; $i < $total_lines; $i ++)
{
echo '<tr align="center">';

for($k = 0; $k < 7; $k ++)
{
$date = intval( 7*$i + $k - $day_index + 1);

if( ($date < 1) || ($date > $total_days) )
{
echo '<td> </td>';
}
else
{
echo ($date == $now_date) ? '<td bgcolor="#FF3300">' . $date . '</td>' : '<td>' . $date . '</td>';
}
}
echo '';
}

echo '';

}
[/php]
上源码了

calendar.rar (922 Bytes)

下载次数:27

2009-6-15 12:21

作者: streen003   发布时间: 2009-05-27

Parse error: syntax error, unexpected T_SL in E:\web\VertrigoServ\www\rili.php on line 28

作者: RZWWJ   发布时间: 2009-05-31

print <<EOT

作者: RZWWJ   发布时间: 2009-05-31

晕,我这里调试正常,把它放的BLOG上,再从BLOG上COPY到这里,不行了
代码就是这样。可能有些细节走样了

作者: streen003   发布时间: 2009-06-01

压缩下,传上来啊。。。。

作者: RZWWJ   发布时间: 2009-06-01

不会少代码吧

作者: 我是疯子   发布时间: 2009-06-01

做个记录,需要时再研究下

作者: Alog_W   发布时间: 2009-06-02

嗯,我试了一下,有一点问题,我是直接复制的代码。 print< <<EOT 这里有问题。去掉了第一<后面的空格就可以了。

作者: wanchun0222   发布时间: 2009-06-02

嗯,我试了一下,有一点问题,我是直接复制的代码。 print< <<EOT 这里有问题。去掉了第一<后面的空格就可以了。

作者: wanchun0222   发布时间: 2009-06-02

去掉空格什么也不显示了。。。

作者: RZWWJ   发布时间: 2009-06-02

明天回公司了去试下下

作者: mailangel123   发布时间: 2009-06-02

[code]
<?php


//获取当前时间的年,月,日。

$now_time = $_SERVER['REQUEST_TIME'];

$now_year = date('Y',$now_time);
$now_month = date('m',$now_time);
$now_date = date('j',$now_time);


//获取当前所在月份的总天数,第一天的星期数。

$time_index = mktime(0,0,0,$now_month, 1, $now_year);

$total_days = date('t', $time_index);
$day_index = date('w', $time_index);

//计算日历的总行数。
$total_lines = ceil( ($total_days + $day_index)/7 );



//显示日历

print<<<EOT
<table width="210" style="border:1px solid #FF0000 ">
<tr><td colspan="7" align="center">$now_year 年 $now_month 月</td></tr>
<tr align="center" bgcolor="#FF6600">
  <td>日</td>
  <td>一</td>
  <td>二</td>
  <td>三</td>
  <td>四</td>
  <td>五</td>
  <td>六</td>
</tr>
EOT;

for($i = 0; $i < $total_lines; $i ++)
{
echo '<tr align="center">';

for($k = 0; $k < 7; $k ++)
{
$date = intval( 7*$i + $k - $day_index + 1);

if( ($date < 1) || ($date > $total_days) )
{
echo '<td>&nbsp;</td>';
}
else
{
echo ($date == $now_date) ? '<td bgcolor="#FF3300">' . $date . '</td>' : '<td>' . $date . '</td>';
}
}
echo '';
}

echo '';

?>
[/code]

作者: 无翼鸟飞翔   发布时间: 2009-06-14

越看越别扭....
最后的两个echo[code]
}
echo '</tr>';
}

echo '</table>';
[/code]

作者: 无翼鸟飞翔   发布时间: 2009-06-14

热门下载

更多