|
|
|
|
<?php
$dayofmonth = date('t');
$day_count = 1;
$num = 0;
for($i = 0; $i < 7; $i++)
{
$dayofweek = date('w', mktime(0, 0, 0, date('m'), $day_count, date('Y')));
$dayofweek = $dayofweek - 1;
if($dayofweek == -1) { $dayofweek = 6; }
if($dayofweel == $i)
{
$week[$num][$i] = $day_count;
$day_count++;
} else {
$week[$num][$i] = "";
}
}
while(true)
{
$num++;
for($i = 0; $i < 7; $i++)
{
$week[$num][$i] = $day_count;
$day_count++;
if($day_count > $dayofmonth) break;
}
if($day_count > $dayofmonth) break;
}
//
echo "<table border=1>";
for($i = 0; $i < count($week); $i++)
{ echo "<tr>";
for($j = 0; $j < 7; $j++)
{
if(!empty($week[$i][$j]))
{
if($j == 5 || $j == 6)
echo "<td><font color=red>".$week[$i][$j]."</font></td>";
else echo "<td>".$week[$i][$j]."</td>";
}
else echo "<td> </td>";
}
echo "</tr>";
}
echo "</table>";
?>
|
скрипт календаря... из PHP головоломки для хакера. я пару раз постарался его самостоятельно написать, но ещё не готов.
прошу прокомментировать каждую строчку... где выводится таблица можно не комментировать. понимаю почти весь код, но некоторые моменты не понимаю. и дайте совет на будушее.
я просто принципиально , пока чисто сам не смогу логически написать такой код не иду дальше. | |
|
|
|
|
|
|
|
для: reda
(02.03.2009 в 02:51)
| | Что конкретно у вас вызывает затруднения? | |
|
|
|
|
|
|
|
для: cheops
(03.03.2009 в 01:51)
| | Уважаемый, Игорь. Несколько дней я думал, что я хочу услышать, после того, как отправил на форум первое сообщение этой темы... В этом коде мне всё понятно одновременно и ничего не понятно!...
Изза этой задачки (головоломки для хакера на PHP) не берусь смотреть дальше , что бы ничего не пропускать. Пока застрял на этом примере и изучаю другие возможности PHP .
Так вот мне не понятно , как "сухо" написаные 2 абзадца , выражаются в 3 абзадце, не понятны, принципы по которым разбиваются этапы "отскриптования" выводящихся цифр...
хотел бы узнать, никого не нагружая, какими методами можно разобраться в этом коде и что бы самому писать подобные, ведь в PHP есть вещи и посложнее календаря, хотя этот скрипт сильно напугал меня.
Понимаю всё, но не понимаю как что взаимодействует...
а вот эта строка не понятна
$dayofweek = date('w', mktime(0, 0, 0, date('m'), $day_count, date('Y')));
|
в отдельности я понимаю всё. | |
|
|
|
|
|
|
|
для: reda
(07.03.2009 в 20:54)
| | ура ! разобрался... настолько всё просто оказалось...
видимо пока пришлось самому разные скрипты писать, теперь всё элементарно !
надо быо вникнуть в сам метод построения и как создан календарь...
т.е. если определить положение цифры в первой неделе на строке, то остальные пишутся в массив своим чередом. | |
|
|
|