Я играю с созданием API с использованием тонкой структуры. В учебнике, который я смотрел на YouTube, он поместил маршруты в отдельный файл, что казалось отличной идеей, пока я не добавил дополнительный файл, то есть два отдельных файла php с маршрутами. Затем по умолчанию используется последний включенный файл и никогда не смотрит на первый. Я испробовал все возможные комбинации, чтобы добиться этой работы, включая создание группы и включение файлов в группу. Похоже, что в более крупном приложении файл index.php стал бы довольно некрасивым, если бы его нельзя было лучше организовать.
Может быть, я что-то упускаю, но мне это кажется довольно простым. ржу не могу
index.php
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
require '../vendor/autoload.php';
require '../src/config/db.php';
$app = new \Slim\App;
//labor routes
require '../src/routes/labor.php';
// Testing routes
require '../src/routes/testing.php';
$app->run();
labour.php
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
$app = new \Slim\App;
// GET all customers
// Default Route
$app->get('/api/labor', function(Request $request, Response $response){
$response->getBody()->write("Hello, This is the Celltron, Inc. API for
internal web. Your IP address has been logged and notification sent to the
Administrator.");
return $response;
});
testing.php
<?php
use \Psr\Http\Message\ServerRequestInterface as Request;
use \Psr\Http\Message\ResponseInterface as Response;
$app = new \Slim\App;
// GET all testing
// Default Route
$app->get('/api/testing', function(Request $request, Response $response){
$response->getBody()->write("Hello, This is the Celltron, Inc. testing API
for internal web. Your IP address has been logged and notification sent to
the Administrator.");
return $response;
});
И если на этот вопрос был дан ответ в другом упущенном вопросе, пожалуйста, не стесняйтесь направлять меня в этом направлении. Но ничего из того, что я видел, не соответствовало наблюдаемой мной проблеме.
Грасиас Амигос






Вы создаете новый экземпляр приложения в каждом файле, у вас должен быть только один
$app = new \Slim\App;
Затем вы можете добавить маршруты к этому одному экземпляру приложения в разных файлах.
Вы создаете только значение в своем index.php?
Хорошо, я беру это обратно ... Я удалил строки запроса и ответа вместе со строкой $ app, и это не сработало. Я просто попробовал это, просто удалив строку $ app, и это, похоже, устранило мою проблему. Спасибо брат. Я сделаю это как ответ, как только это позволит мне ..
Вы также можете потребовать свои маршруты внутри $app->group(...).
Извините, я не получил этого. Где удалить строку $ app? В индексном файле или в файлах маршрутов?
Я попробовал это, и это не сработало .. получил ту же тонкую ошибку о том, что маршрут не найден.