Оглавление

Создание метода для генерации разметки

Теперь, когда у нас имеется массив данных одиночных событий, можно создать новый общедоступный метод, который будет форматировать данные, преобразуя их в HTML-разметку.

 
Мы назовем этот метод  displayEvent(). Он принимает уникальный идентификатор события в качестве параметра и генерирует HTML-разметку, выполняя следующие действия:
1)    загружает данные событий с помощью метода  _loadEventById().
2)    использует начальную и конечную даты для генерации строк, описывающих событие;
3)    возвращает HTML-разметку для отображения события.
Создайте метод  displayEvent(),  добавив в класс Calendar код, выделенный в листинге желтым фоном.

 


 <?php 
 
class Calendar extends DB_Connect 
{ 
 
    private $_useDate; 
 
    private $_m; 
 
    private $_y; 

   private $_daysInMonth; 
   private $_startDay; 
   public function __construct($dbo=NULL, $useDate=NULL) {...} 
   public function buildCalendar() {...} 
/** * Отображает информацию о заданном событии * * @param int $id: идентификатор (ID) события * @return string: элементарная разметка для отображения информации о событии */ public function displayEvent($id) { /* * Убедиться в фом, что ID был передан */ if ( empty($id) ) { return NULL; } /* * Проверить, что ID является целым числом */ $id = preg_replace('/[^0-9]/', '', $id); /* * Загрузить данные о событии иэ БД */ $event = $this->_loadEventById($id); /* * Сгенерировать строки для даты, начального и конечного времени */ $ts = strtotime($event->start); $date = date('F d, Y', $ts); $start = date('g:ia', $ts); $end = date('g:ia', strtotime($event->end)); /* * Сгенерировать и возвратить разметку */ return "<h2>$event->title</h2>" . "\n\t<p class="dates">$date, $start&mdash;$end</p>" . "\n\t<p>$event->description</p>"; }
private function _loadEventData($id=NULL) {...} private function _createEventObj() {...} private function _loadEventById($id) {...} } ?>
Комментарии принадлежат их авторам. Мы не несем ответственности за их содержание.
Отправитель Нити