Les bases
Travaux pratiques
L'objet
Exercices
Travaux Pratique 2
Conclusion

Dans le chapitre précédent on a passé un certain temps à gérer le contrôle des paramètres (afin de vérifier que ?page est bien un entier). Afin de ne pas avoir à écrire cette logique encore et encore nous allons créer une méthode statique qui nous permettra d'obtenir facilement des paramètre "filtrés".

Aussi, on ne souhaite pas voir le paramètre ?page=1 dans l'URL (le paramètre est inutile et peut créer du duplicate). On gère donc cela dès l'entrée de notre application.

if (isset($_GET['page']) && $_GET['page'] === '1') {
    $url = explode('?', $_SERVER['REQUEST_URI'])[0];
    unset($_GET['page']);
    $query = http_build_query($_GET);
    $url = $url . (empty($query) ? '' : '?' . $query);
    header('Location: ' . $url);
    http_response_code(301);
    exit();
}

Ce code permet de mettre une contrainte globale sur toute l'application et permet d'éviter d'avoir à se soucier du problème par la suite.