Articles of slim 3

PHP Slim Framework Создать контроллер

Я создаю API, используя платформу Slim. В настоящее время я использую один файл для создания маршрута и пропускаю его: $app->get('/', function($req, $resp){ //Code… }) Но я понимаю, что мой файл быстро растет. То, что я хочу сделать, это использовать контроллеры вместо этого, поэтому у меня будет класс контроллера и просто передайте методы экземпляра / статики […]

Как перенаправить и сохранить данные для запроса после перенаправления

Я пытаюсь перенаправить пользователя на страницу входа с ошибками и флэш-сообщением. В настоящее время я делаю это: return $this->container->view->render($response,'admin/partials/login.twig',['errorss'=>$errors]); Но я хочу перенаправить на страницу входа, все еще имея сообщения об ошибках и флэш-сообщение. Я пробовал этот путь, но не работает: $this->container->flash->addMessage('fail',"Please preview the errors and login again."); return $response->withRedirect($this->container->router->pathFor('admin.login',['errors'=>$errors]));

Получить параметры POST PUT с помощью Slim 3

Я пытаюсь создать полный REST API с Slim 3. С Slim 2 было довольно легко. Но теперь у меня есть некоторые проблемы. Путь POST и PUT не работает. Я не могу получить параметры. Я нашел $request->getHeaders() в документах, который работает, но вместо того, чтобы получить пример length параметра, я получаю HTTP_LENGHT и каждый параметр имеет […]

Как отправить URL-адрес в параметре маршрута?

Я определил такой маршрут: $app->map(['GET', 'POST'],'/abc/[{url}]', function ($request, $response, $args) { return $response; })->add(new CustomMiddleware()); Он работает нормально, когда я передаю URL-адрес без http:// но дает мне 404 page not found -Page с http:// или https:// . Я также пробовал строку с кодировкой url, но выдавал ту же ошибку: http://localhost/slim/public/index.php/abc/http%3A%2F%2Fstackoverflow.com The requested URL /slim/public/index.php/abc/http://stackoverflow.com was […]

Slim 3 получает текущий маршрут в промежуточном программном обеспечении

Я хочу получить имя текущего маршрута в классе промежуточного программного обеспечения. Ранее (в Slim 2. *) вы могли бы получить текущий маршрут следующим образом: $route = $this->app->router->getCurrentRoute(); Но эта функция была удалена в версии 3.0 Slim. Я нашел следующий код в методе __invoke для Slim\App : // Get the route info $routeInfo = $request->getAttribute('routeInfo'); /** […]