Slim Framework ^3 多个路由文件

Slim Framework ^3 multiple route files

我正在尝试使用 slim 框架创建一个 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();

labor.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;

然后您可以将路由添加到不同文件中的这个应用程序实例。