我无法在php中理解的功能

时间:2011-05-25 13:50:47

标签: php

for ($y = 25; $y >= 7; $y--)
{
    $showYear = false;
    for ($m = 12; $m >= 1; $m--)
    {
        if (blogList($m, $y))
            $showYear = true;
    }
    if ($showYear) {
        echo '<h2>' . (2000 + $y) . '</h2>';
        for ($m = 12; $m >= 1; $m--)
        {
            echo blogList($m, $y);
        }
    }
}

//blog archives

function blogList($month, $year) 
{
    $lastDate = array(31, 29, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31);

    $beginDate = mkTime(0, 0, 0, $month, 1, $year);
    $endDate = mkTime(0, 0, 0, $month, $lastDate[$month - 1], $year);


    $query = .......;
}
  1. 我不知道他为什么设置$y=25$showYear = false;
  2. 为什么$lastDate = array(31,29,31,30,31,30,31,31,30,31,30,31);

5 个答案:

答案 0 :(得分:1)

  1. $y = 25是因为他从2025年向后循环到2007年。$y最终成为mkTime的年份参数(参见http://php.net/manual/en/function.mktime.php)。

  2. 该数组包含每个日历月的最后日期,例如1月有31天。

答案 1 :(得分:0)

  1. 显示2007年至2025年的博文。
  2. 每个月的天数。
  3. 但是,不要试图从上面的代码中学习!

答案 2 :(得分:0)

  1. 由于blogList($m,$y)期望$y的值在7-25的范围内。
  2. 这些是公历上月份的最后日期。

答案 3 :(得分:0)

<$> $ lastdate保存一年中12个月中每个月的天数,并在运行查询之前尝试查找该月的开始日期和结束日期。

我不确定y = 25 - 可能取决于$ query变量中定义的内容

答案 4 :(得分:0)

1)因为它是从2007年到2025年的日期。由于它需要检查blogList中的内容,因此它设置为false的变量,我认为它计算了月末剩余的天数。

2)那是本月的最后一天。该数组有12个元素。