PHP code example of squidit / slim-attribute-router
1. Go to this page and download the library: Download squidit/slim-attribute-router library. Choose the download type require.
2. Extract the ZIP file and open the index.php.
3. Add this code to the index.php.
<?php
require_once('vendor/autoload.php');
/* Start to develop here. Best regards https://php-download.com/ */
squidit / slim-attribute-router example snippets
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
class StatusCodeAction
{
#[Route('/test1/http/{statusCode:[1-5]{1}\d{2}}',['GET', 'POST', 'PUT', 'DELETE'], 'test_http_statuscode')]
public function __invoke(Request $request, Response $response, array $args): Response
{
// action/controller code
return $response;
}
}
use Psr\Http\Message\ResponseInterface as Response;
use Psr\Http\Message\ServerRequestInterface as Request;
class StatusCodeAction
{
#[Route('/test2/http/{statusCode:[1-5]{1}\d{2}}',['POST'])]
public function testMethod2(Request $request, Response $response, array $args): Response
{
// action/controller code
return $response;
}
#[Route('/test3/http/{statusCode:[1-5]{1}\d{2}}',['DELETE'])]
public function testMethod3(Request $request, Response $response, array $args): Response
{
// action/controller code
return $response;
}
}
use SquidIT\Slim\Routing\AttributeRouteCollector;
use Slim\Factory\AppFactory;
// create AttributeRouteCollector
$attributeRouteCollector = new AttributeRouteCollector([
'path' => [
'/path/to/ActionControllers',
'/different/path/to/ActionControllers/if/needed',
]],
AppFactory::determineResponseFactory(),
new CallableResolver($container) // pass in your DI container if you are using a container
);
// Instantiate the app
AppFactory::setRouteCollector($attributeRouteCollector);
$app = AppFactory::create();
$app->run();
Loading please wait ...
Before you can download the PHP files, the dependencies should be resolved. This can take some minutes. Please be patient.