1. Go to this page and download the library: Download hajjvero/you-route 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/ */
hajjvero / you-route example snippets
use YouRoute\Attribute\Route;
use YouRoute\Http\Response;
class HomeController
{
#[Route(path: '/', name: 'home')]
public function index(): Response
{
return new Response('<h1>Bienvenue sur la page d\'accueil</h1>');
}
#[Route(path: '/user/{id}', name: 'user_show', methods: ['GET'])]
public function show(int $id): Response
{
return new Response("<h1>Profil utilisateur #$id</h1>");
}
}
ouRoute\YouRouteKernel;
use YouRoute\Http\Request;
// Initialiser le kernel
$kernel = new YouRouteKernel();
// Résoudre la requête
$request = new Request();
$kernel->run(__DIR__ . '/src/Controller', $request);
#[Route(path: '/api/users', methods: 'POST')] // Une seule méthode
#[Route(path: '/api/users/{id}', methods: ['PUT', 'DELETE'])] // Plusieurs méthodes
#[Route(path: '/article/{id}/{slug}', name: 'article_show')]
public function show(int $id, string $slug): Response
{
// $id et $slug sont automatiquement extraits de l'URL
}
use YouRoute\Attribute\Route;
use YouRoute\Http\Response;
#[Route(path: '/api')]
class ApiController
{
#[Route(path: '/users', methods: 'GET')]
public function getUsers(): Response
{
return new Response('<h1>Liste des utilisateurs</h1>');
}
#[Route(path: '/users/{id}', methods: 'GET')]
public function getUser(int $id): Response
{
return new Response("<h1>Détails de l'utilisateur #$id</h1>");
}
}