Захотелось написать календарь на PHP, задача не из самых простых, ибо нужно еще и хороший код.
В общем, давайте обмениваться идеями с реализацией самого простого календарика на PHP (т.е. без HTML, важен только PHP-код).
Вот что я наварганил:
| Код | <?php
$time = time(); // $time = mktime(0, 0, 0, 2, 3, 2030);
$days = (date('w', $time) > 0) ? 7 - date('w', $time) + date('j', $time) % 7 : date('j', $time) % 7; $print = ($days != 7) ? ($days < 7) ? date('t', $time - 2419200) - $days : date('t', $time - 2419200) - $days % 7 : 1;
echo date('d/m/Y H:i:s', $time) . PHP_EOL . PHP_EOL; echo 'ПН ВТ СР ЧТ ПТ СБ ВС' . PHP_EOL;
for ($week = 1; $week <= 6; $week++) { for ($day = 1; $day <= 7; $day++) { printf('%02d ', $print); if (($week == 1 && $print == date('t', $time - 2419200)) || ($week > 4 && $print == date('t', $time))) { $print = 0; } $print++; } if ($week > 3 && ($print < 15 || $print == date('t', $time) + 1)) { break; } echo PHP_EOL; }
?> |
Кто запостит реализацию по-лучше (скорость работы, красота написания и т.п.) - тому сразу плюс )) Просто интересно, можно ли организовать такой скрипт еще проще? Над этим голову пол дня ломал 
Добавлено через 1 минуту и 9 секунд Результат работы моего скрипта:
| Код | 03/06/2007 20:41:38
ПН ВТ СР ЧТ ПТ СБ ВС 28 29 30 31 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 01 |
|