Небольшая ошибка относительно «неожиданных данных в буфере вывода», не связанных с символами перед тегом PHP или закрывающим тегом PHP - PullRequest
0 голосов
/ 07 апреля 2019

У меня есть такая простая структура кода:

api.php:

<?php
    require_once 'api/Main.class.php';
    new Main();

api / Main.class.php:

<?php
    require_once __DIR__ . '../../vendor/autoload.php';
    require_once 'Router/Router.class.php';

    class Main
    {

        function __construct()
        {
            $router = new Router();
            $router->getRoute();
        }

    }

Маршрутизатор / Маршрутизатор.class.php:

<?php
    use \Psr\Http\Message\ServerRequestInterface as Request;
    use \Psr\Http\Message\ResponseInterface as Response;

    require_once __DIR__.'../../../vendor/autoload.php';

    class Router
    {

        function getRoute()
        {
            $app = new \Slim\App;

            $app->get(
                '/',
                function (Request $request, Response $response, array $args) {
                    $response->getBody()->write('Home');

                    return $response;
                }
            );

            $app->run();
        }

    }

Это приводит к следующей ошибке, когда я перехожу к api.php: <b>Fatal error</b>: Uncaught RuntimeException: Unexpected data in output buffer. Maybe you have characters before an opening &lt;?php tag? in /Path/to/project/root/vendor/slim/slim/Slim/App.php:625

Эта ошибка не дает мне много информации.Я пытался заставить Slim работать в кодовой базе ООП, но эта ошибка продолжает появляться каждый раз, когда я пытаюсь это сделать.

Я также пытался вернуть $app, чтобы я мог запустить t в другом месте,который также производит ту же ошибку.Что не так в этом коде?

...