Делаю тестовое приложение на slim фреймворке:
Часть index.php$app->get('/ticket/{id}', function (Request $request, Response $response, $args) {
$ticket_id = (int)$args['id'];
$mapper = new TicketMapper($this->db);
$ticket = $mapper->getTicketById($ticket_id);
$response->getBody()->write(var_export($ticket, true));
return $response;
});
$app->get('/tickets', function (Request $request, Response $response) {
$this->logger->addInfo("Ticket list");
$mapper = new TicketMapper($this->db);
$tickets = $mapper->getTickets();
$response = $this->view->render($response, "tickets.phtml", ["tickets" => $tickets]);
return $response;
});
Файл шаблона:<?php foreach($data['tickets'] as $ticket): ?>
<tr>
<td><?=$ticket->getTitle() ?></td>
<td><?=$ticket->getComponent() ?></td>
<td><?=$ticket->getShortDescription() ?> ...</td>
</tr>
<?php endforeach; ?>
Ругается что не может вызвать функцию Call to a member
function getTitle(). Я не могу понять где прописать эти 3 функции? В классе TicketMapper уже прописал:
function getTitle(){
return 'Заголовок';
}