Всем привет. Начал потихоньку разбиратся с MVC . Создал модель и контроллер , а с роутингом тупо завис. Поставил себе такой роутер https://github.com/klein/klein.php - все работает , а прикрепить метод контроллера не получается.
index.php
<?php
require_once __DIR__ . '/vendor/autoload.php';
$controller =new ProductController($model);
$klein = new \Klein\Klein();
$klein->respond('GET', '/hello-world', function () {
return 'Hello World!';
});
$klein->dispatch();
В контроллере есть метод index (его проверил работает)
Судя по документации, контроллером является коллбек, указанный третьим параметром в методе Klein::respond. Стоит либо прописать код контроллера в этой функции (как указано в документации), либо передать Ваш метод ProductController::index в качестве коллбека call_user_func([$controller, 'index']) (считаю, так себе идея)
Также не очень идея инициализировать контроллер моделью. Лучше создать класс сервиса, в котором накодить бизнес-логику, и передавать его в роутинг (описано на гитхабе в разделе "Lazy services")
Сборка персонального компьютера от Artline: умный выбор для современных пользователей