>백엔드 개발 >PHP 튜토리얼 >PHP 달력 코드(데모 효과 포함)

PHP 달력 코드(데모 효과 포함)

WBOY
WBOY원래의
2016-07-25 08:56:051774검색
  1. function build_calendar($month,$year,$dateArray) {
  2. // 日历表头,星期天开始一直到星期六
  3. $daysOfWeek = array('S','M','T','W','T','F','S');
  4. // 本月第一天的位置
  5. $firstDayOfMonth = mktime(0,0,0,$month,1,$year);
  6. // 获取本月天数
  7. $numberDays = date('t',$firstDayOfMonth);
  8. // 获取本月第一天
  9. $dateComponents = getdate($firstDayOfMonth);
  10. // 获取月份的英文单词
  11. $monthName = $dateComponents['month'];
  12. $dayOfWeek = $dateComponents['wday'];
  13. // 月历表头
  14. $calendar = "";
  15. $calendar .= "
  16. ";
  17. $calendar .= "
  18. ";
  19. // 星期表头
  20. foreach($daysOfWeek as $day) {
  21. $calendar .= "
  22. ";
  23. }
  24. // 开始输出日历
  25. // 初始化天数计数器,从1号开始
  26. $currentDay = 1;
  27. $calendar .= "
  28. ";
  29. // 使用变量 $dayOfWeek 可以保证一周七天精确输出
  30. if ($dayOfWeek > 0) {
  31. $calendar .= "
  32. ";
  33. }
  34. $month = str_pad($month, 2, "0", STR_PAD_LEFT);
  35. while ($currentDay <= $numberDays) {
  36. // 7天一行,7天一到新增一行
  37. if ($dayOfWeek == 7) {
  38. $dayOfWeek = 0;
  39. $calendar .= "
  40. ";
  41. }
  42. $currentDayRel = str_pad($currentDay, 2, "0", STR_PAD_LEFT);
  43. $date = "$year-$month-$currentDayRel";
  44. $calendar .= "
  45. ";
  46. // 计数器
  47. $currentDay ;
  48. $dayOfWeek ;
  49. }
  50. // 最后一行表格的处理,往往最后一行不可能全部填满,需要要空格填充。
  51. if ($dayOfWeek != 7) {
  52. $remainingDays = 7 - $dayOfWeek;
  53. $calendar .= "
  54. ";
  55. }
  56. $calendar .= "
  57. ";
  58. $calendar .= "
  59. $monthName $year
    $day
    $currentDay
    ";
  60. return $calendar;
  61. }
  62. ?>
复制代码

php日历代码的调用示例:

  1. //php日历
  2. $dateComponents = getdate();
  3. $month = $dateComponents['mon'];
  4. $year = $dateComponents['year'];
  5. echo build_calendar($month,$year,$dateArray);
  6. ?>
复制代码

>>> 您可能感兴趣的文章: php calender日历代码(解决2038问题) php日历代码分享 简单实用的php日历代码 php日历代码 php实现的高效日历代码 php日历代码 三个不错的php日历代码 分享一例PHP简单日历代码 php简单日历的实现代码(可绑定事件)



성명:
본 글의 내용은 네티즌들의 자발적인 기여로 작성되었으며, 저작권은 원저작자에게 있습니다. 본 사이트는 이에 상응하는 법적 책임을 지지 않습니다. 표절이나 침해가 의심되는 콘텐츠를 발견한 경우 admin@php.cn으로 문의하세요.