💡 Envie de vous mettre à PHP Orienté Objet ? En savoir plus...

Tuto PHP - Créer un router

PrimFX PrimFX

Après l'URL Rewriting, je vous propose de découvrir un autre moyen de gérer vos URLs en PHP sans dépendre de votre serveur: les routers (ou routeurs).

  • .htaccess
RewriteEngine On

RewriteCond %{REQUEST_FILENAME} !-f
RewriteCond %{REQUEST_FILENAME} !-d
RewriteRule ^(.*)$ index.php?url=$1 [NC,L]
  • index.php
<?php

$url = '';
if(isset($_GET['url'])) {
    $url = $_GET['url'];
}

if($url == '') {
    require 'home.php';
} elseif(preg_match('#article-([0-9]+)#', $url, $params)) {
    $idArticle = $params[1];
    require 'article.php';
} else {
    require '404.php';
}

/*$url = '';
if(isset($_GET['url'])) {
    $url = explode('/', $_GET['url']);
}

if($url == '') {
    require 'home.php';
} elseif($url[0] == 'article' AND !empty($url[1])) {
    $idArticle = $url[1];
    require 'article.php';
} else {
    require '404.php';
}*/
  • home.php
<!DOCTYPE html>
<html>
<head>
    <title>Accueil</title>
</head>
<body>
Ma page d'accueil !
</body>
</html>
  • article.php
<!DOCTYPE html>
<html>
<head>
    <title>Article <?= $idArticle ?></title>
</head>
<body>
Mon article numero <?= $idArticle ?>
</body>
</html>
  • 404.php
<!DOCTYPE html>
<html>
<head>
    <title>ERREUR !</title>
</head>
<body>
Erreur 404 !
</body>
</html>
Liens utiles :

Votre commentaire

Vous devez être connecté pour poster un commentaire. Se connecter ou Créer un compte

Commentaires 0