бесконечный цикл с функцией даты - PullRequest
0 голосов
/ 16 марта 2011

Я слежу за книгой php, пытаясь сделать календарь. Проблема в том, что даже когда я следую коду к букве, я бьюсь в загвоздки.

Вот цикл из книги

    for ( $i=1, $c=1, $t=date('j'), $m=date('m'), $y=date('Y');
            $c<=$this->_daysInMonth; ++$i )

Это работает в примере, который я загружаю с сайта книг, но не в моем коде. Я не понимаю, как это может привести ни к чему, кроме бесконечного цикла.

EDIT

Вот вся функция, теперь она работает, но я до сих пор не понимаю, как ...

    $html .= "\n\t<ul>"; // ny liste
    for ( $i=1, $c=1, $t=date('j'), $m=date('m'), $y=date('Y'); $c<=$this->_daysInMonth; ++$i) //endless loop legg til ++$c 
    {

        /*
         * Apply a "fill" class
         */
        $class = $i <= $this->_startDay ? "fill" :NULL; 

        /*
         * Add today to current date
         */
        if ( $c == $t && $m == $this->_m && $y == $this->_y )
        {
            $class = "today"; 
        }

        /*
         * Build opening and closing list for item tags
         */
        $ls = sprintf("\n\t\t<li class=\"%s\">", $class); 
        $le = "\n\t\t</li>"; 

        /*
         * add the day of the month to identify the calender box
         */
        if ( $this->_startDay < $i && $this->_daysInMonth >= $c)
        {
            $date =sprintf("\n\t\t\t<strong>%02d</strong>", $c++); 
        }
        else 
        { 
            $date="&nsbp;";
        }

        /*
         * If the current date is saturday wrap the next row
         */
        $wrap = $i != 0 && $i%7 == 0 ? "\n\t</ul>\n\t<ul>" : NULL;
        $html .= $ls . $date . $le . $wrap; 

    }

1 Ответ

1 голос
/ 16 марта 2011

$ c увеличивается в этой строке:

$date =sprintf("\n\t\t\t<strong>%02d</strong>", $c++);
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...